Virtual character posture editing method and device, equipment and storage medium

By displaying model virtual characters and candidate bone points in a three-dimensional virtual environment, and changing the target bone points and their bound bone positions in response to user editing operations, the problem of limited virtual character pose editing functions is solved, and the generation of custom poses is realized and share.

CN119174911APending Publication Date: 2024-12-24TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310748849.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-21
Publication Date
2024-12-24

AI Technical Summary

Technical Problem

The virtual character pose editing function in the existing three-dimensional virtual environment is limited. Users can only select preset skeleton animations and cannot perform custom operations, resulting in limited pose sharing and use.

Method used

Provides a pose editing method for virtual characters, which can change the target skeleton point and its bound bone position by displaying model virtual characters and candidate bone points, responding to user selection and editing operations, and achieve convenient pose editing.

Benefits of technology

Users can generate various custom poses and apply them to current or other user-controlled virtual characters, expanding the flexibility of pose editing and sharing possibilities, and improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119174911A_ABST
    Figure CN119174911A_ABST
Patent Text Reader

Abstract

The invention discloses a posture editing method and device for a virtual character, equipment and a storage medium, and is applied to the field of three-dimensional virtual environments. The method comprises the following steps: displaying a model virtual character and at least one candidate skeleton point in a virtual environment; in response to a selection operation for a target skeleton point in the at least one candidate skeleton point, displaying an editing control for editing the target skeleton point; and in response to an editing operation on the editing control, changing the position of the target skeleton point in the virtual environment, and changing the position of at least one skeleton bound with the target skeleton point in the virtual environment in a linkage manner. According to the method provided by the invention, a convenient editing scheme for the posture of the virtual character is provided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of three-dimensional virtual environments, and in particular to a method, device, equipment and storage medium for editing the posture of a virtual character. Background Art

[0002] In games that support three-dimensional virtual environments, users can manipulate virtual characters in the three-dimensional virtual environment to perform various activities, such as walking, running, attacking, releasing skills, etc.

[0003] In the related art, virtual characters are realized by three-dimensional skeleton models. The postures of virtual characters in various activity states are presented according to pre-set skeleton animations. Users can operate virtual characters to move to different positions in the three-dimensional virtual world, and use pre-set skeleton animations to pose in certain postures for photo sharing.

[0004] However, the above postures can only be a subset of the pre-set skeletal animations, and the postures that users can take photos and share are very limited. Summary of the invention

[0005] The present application provides a method, device, equipment and storage medium for editing the posture of a virtual character. The technical solution is as follows:

[0006] According to one aspect of the present application, a method for editing a virtual character's posture is provided, the method comprising:

[0007] Displaying a model virtual character and at least one candidate skeleton point in a virtual environment;

[0008] In response to a selection operation on a target bone point among the at least one candidate bone point, displaying an edit control for editing the target bone point;

[0009] In response to the editing operation on the editing control, the position of the target bone point in the virtual environment is changed, and the position of at least one bone bound to the target bone point in the virtual environment is also changed in conjunction.

[0010] According to one aspect of the present application, a virtual character posture editing device is provided, the device comprising:

[0011] A display module, used for displaying a model virtual character and at least one candidate skeleton point in a virtual environment;

[0012] A selection module, configured to display an editing control for editing a target bone point in response to a selection operation on the target bone point among the at least one candidate bone point;

[0013] The editing module is used to change the position of the target bone point in the virtual environment in response to the editing operation on the editing control, and to link the position of at least one bone bound to the target bone point in the virtual environment.

[0014] According to another aspect of the present application, a computer device is provided, the computer device comprising: a processor and a memory, the memory storing a computer program, the computer program being loaded and executed by the processor to implement the virtual character posture editing method as described above.

[0015] According to another aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and the computer program is loaded and executed by a processor to implement the virtual character posture editing method as described above.

[0016] According to another aspect of the present application, a computer program product is provided, wherein the computer program product stores a computer program, and the computer program is loaded and executed by a processor to implement the virtual character posture editing method as described above.

[0017] According to another aspect of the present application, a chip is provided, the chip comprising a programmable logic circuit and / or program instructions, and a computer device equipped with the chip is used to implement the virtual character posture editing method as described above.

[0018] The beneficial effects brought by the technical solution provided by the embodiment of the present application include at least:

[0019] By providing players with editing controls for target bone points, responding to editing operations on the editing controls, and simultaneously changing the position of the target bone point in the virtual environment, and linkedly changing the position of at least one bone bound to the target bone point in the virtual environment, it is possible to change the posture editing of multiple bones in one editing operation, providing players with a convenient posture editing solution, and users can editably generate a variety of custom postures, and subsequently apply the generated custom postures to virtual characters controlled by the current user or other users. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments 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 creative work.

[0021] Figure 1 A structural block diagram of a computer system provided by an embodiment of the present application is shown;

[0022] Figure 2 An interface diagram showing a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0023] Figure 3 A flowchart of a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0024] Figure 4 An interface diagram showing a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0025] Figure 5 A flowchart showing a method for starting a gesture editing function provided by an embodiment of the present application is shown;

[0026] Figure 6 A schematic diagram showing a first entry of a gesture editing function provided by an embodiment of the present application is shown;

[0027] Figure 7 A schematic diagram showing a second entrance of a gesture editing function provided by an embodiment of the present application is shown;

[0028] Figure 8 A schematic diagram showing the working principle of a camera model in a virtual environment provided by an embodiment of the present application is shown;

[0029] Fig. 9 A flowchart of a method for setting an initial posture provided by an embodiment of the present application is shown;

[0030] Fig.10 A schematic diagram of a skeleton model of a virtual character provided by an embodiment of the present application is shown;

[0031] Fig.11 A flowchart of a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0032] Fig.12 A schematic diagram of a gesture editing interface provided by an embodiment of the present application is shown;

[0033] Fig.13 A flowchart of a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0034] Fig.14 A flowchart of a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0035] Fig.15 A schematic diagram of an interface when a drag control is dragged provided by an embodiment of the present application is shown;

[0036] Fig.16A flowchart of a method for saving a custom gesture provided by an embodiment of the present application is shown;

[0037] Fig.17 A flowchart showing a method for applying a custom gesture provided by an embodiment of the present application is shown;

[0038] Fig.18 A schematic diagram showing an application interface of a custom gesture provided by an embodiment of the present application is shown;

[0039] Fig.19 A schematic diagram showing a sharing interface for a custom gesture provided by an embodiment of the present application is shown;

[0040] Fig. 20 A schematic diagram showing a sharing interface for a custom gesture provided by an embodiment of the present application is shown;

[0041] Fig.21 A flowchart of a method for editing a virtual character's posture provided by an embodiment of the present application is shown;

[0042] Fig. 22 A schematic diagram of the structure of a virtual character posture editing device provided by an embodiment of the present application is shown;

[0043] Fig.23 A structural block diagram of a computer device provided by an embodiment of the present application is shown. DETAILED DESCRIPTION

[0044] In order to make the purpose, technical scheme and advantages of the present application clearer, the implementation mode of the present application will be further described in detail below in conjunction with the accompanying drawings. The exemplary embodiments will be described in detail here, and examples thereof are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation modes described in the following exemplary embodiments do not represent all implementation modes consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the attached claims.

[0045] The terms used in this application are for the purpose of describing specific embodiments only and are not intended to limit this application. The singular forms of "a", "said" and "the" used in this application and the appended claims are also intended to include plural forms unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0046] It should be understood that although the terms first, second, third, etc. may be used in the present application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other.

[0047] First, the related technologies involved in the embodiments of this application are briefly introduced:

[0048] Virtual scene: a scene displayed or provided by the client of an application when it is running on a terminal. The application includes but is not limited to game applications, extended reality (XR) applications, social applications, interactive entertainment applications, etc. The virtual scene can be a simulation of the real world, a semi-simulated and semi-fictional scene, or a purely fictional scene. The virtual scene can be a two-dimensional virtual scene, a 2.5-dimensional virtual scene, or a three-dimensional virtual scene, which is not limited in the embodiments of the present application.

[0049] Virtual character: can move in a virtual scene. The virtual character can be in the form of a human, an animal, a cartoon, or other forms, which are not limited in the embodiments of the present application. The virtual character can be displayed in a three-dimensional form or in a two-dimensional form. The embodiments of the present application use a three-dimensional form as an example, but are not limited to this.

[0050] Skeleton chain: The virtual character in this application is implemented using a skeleton model, and a skeleton model includes at least one skeleton chain. Each skeleton chain is constructed by one or more rigid bones, and a joint is connected between two adjacent bones. Joints may or may not have the ability to move. Some bones can rotate and move around joints. By adjusting the joint parameters of the joints, the skeleton posture can be adjusted, and then the skeleton posture can be adjusted, and finally the posture adjustment of the virtual character can be achieved.

[0051] Inverse Kinematics (IK): is a technology used to confirm the skeleton posture of a virtual character. If the skeleton model of the virtual character is regarded as a well-defined skeleton chain structure, the skeleton part located at the root of the skeleton chain can be called the root skeleton, and the skeleton part located at the end of the skeleton chain can be called the terminal skeleton. Schematically, the IK technology can solve the position, angle and other information of each joint on the skeleton chain to which the terminal skeleton belongs, on the premise of determining the target position of the terminal skeleton, so that the terminal skeleton of the virtual character can be moved to the target position, and the technology of obtaining the overall posture of the skeleton chain through the position information of the terminal skeleton is realized. Of course, it is also possible to solve the position of other bones on the skeleton chain in the virtual environment on the premise of determining the position of an intermediate skeleton on the skeleton chain, and the embodiments of the present application are not limited to this.

[0052] Modeling: Based on the system's preset initial posture, the user adjusts the virtual character through the posture editor to generate a personalized custom posture. The posture data and posture preview of the custom posture can be saved as a modeling work to facilitate the application or sharing of the custom posture on various virtual characters controlled by different accounts. The modeling work can be considered a UGC work.

[0053] Style Directory: Users collect their own generated style works and other users' collected style works in the same network space or program function, which is called a style directory.

[0054] Convenient Editing Mode: By dragging a bone point of the virtual character, other bones on the same bone chain as the bone point will be changed at the same time, so as to adjust the posture of the virtual character. Since one drag can change the position of multiple bones at the same time, it is called Convenient Editing Mode.

[0055] Expert Edit Mode: By rotating a bone point of the avatar, changing the position of the bone corresponding to the bone point, the posture of the avatar can be finely adjusted. Since each bone is finely adjusted separately, the posture of the avatar can be adjusted more subtly, which is called Expert Edit Mode.

[0056] Physiological angle limit of bone points: whether each bone point is open to x / y / z axis rotation, and the maximum and minimum rotation angle configuration of each bone point when rotating on the x / y / z axis.

[0057] Editable freedom limits of bone points: When each bone point rotates around the x / y / z axis, the maximum angle change that can be rotated is configured based on the system's preset initial posture, which is configured by the staff or user.

[0058] Sharing: Send user-generated styling works to online groups, or share peer-to-peer with friend accounts in a social relationship chain. The social relationship chain can be a relationship chain in the game or a relationship chain outside the game.

[0059] Collection: Save and collect the modeling works generated and shared by others.

[0060] One-click application: Using the one-click application function, the modeling works created by the current user or other users can be quickly applied to the virtual character controlled by the current user.

[0061] Body type: The body types of different virtual characters, such as: adult male, adult female, boy, girl, old man, child, etc. Due to the limited space in the present application, the body types of adult male, adult female and girl are used as examples for illustration.

[0062] Heads-up Display (HUD) control: a screen that displays relevant information or controls within the game, usually displayed on the upper layer of the virtual environment screen. The virtual environment screen is a screen obtained by observing the three-dimensional virtual environment using a camera model. HUD control is the most effective way for the game world to interact with players. Elements that can convey information to players through visual effects can be called HUD. Common HUD controls include operation controls, prop bars, maps, health bars, etc. Heads-up display controls are also called head-up display controls. In this application, all or part of the editing controls are in the form of HUD controls.

[0063] Taking game applications as an example, in virtual scenes of fighting games (FTG), action games (ACT), multiplayer online tactical competitive games (MOBA), real-time strategy games (RTS), massive / massively multiplayer online games (MMOG), shooting games (STG), first-person shooting games (FPS), third-person shooting games (TPS) and arcade games, the postures / actions of the virtual characters controlled by users are preset by the game, such as walking postures, running postures, postures when releasing skills, etc. Users cannot actively set the postures of the virtual characters.

[0064] The embodiment of the present application provides a user generated content (UGC) function for the posture / action of a virtual character. The present application supports users to use a posture editor to customize the positions of various bones of a virtual character based on the basic posture preset by the system in the game, and generate a personalized custom posture. At the same time, the custom posture can be saved as a modeling work, shared with other users, used by others, collected, etc. Through the complete UGC output-sharing-application-collection system, ordinary users can more conveniently obtain the UGC creations of head users in the game, and also meet the creation desire, sharing desire, and social needs of head users, fill in the spare time, and form a good social experience closed loop.

[0065] Figure 1The computer system 100 includes at least one of a first terminal 110 , a server 120 and a second terminal 130 .

[0066] The first terminal 110 has installed and runs an application that supports a virtual environment, such as a game application, an XR application, a virtual social application, an interactive entertainment application, a metaverse application, etc. The first terminal 110 is a terminal used by a first user. The application is provided with a virtual character posture editor for realizing the generation, sharing and collection of the above-mentioned modeling works.

[0067] In some embodiments, the first terminal 110 may be considered as a first user using the first terminal 110 .

[0068] The first terminal 110 is connected to the server 120 via a wireless network or a wired network.

[0069] The server 120 includes one of a single server, multiple servers, a cloud computing platform, and a virtualization center. Schematically, the server 120 includes a processor 121 and a memory 122, and the memory 122 includes a receiving module 1221, a display module 1222, and a control module 1223. The server 120 is used to provide background services for applications that support generating and / or displaying hit animations. Optionally, the server 120 undertakes the main computing work, and the first terminal 110 and the second terminal 130 undertake the secondary computing work; or, the server 120 undertakes the secondary computing work, and the first terminal 110 and the second terminal 130 undertake the main computing work; or, the server 120, the first terminal 110, and the second terminal 130 adopt a distributed computing architecture for collaborative computing.

[0070] The second terminal 130 has an application program supporting a virtual environment installed and running. The second terminal 130 is a terminal used by a second user. The application program is provided with a posture editor of a virtual character.

[0071] In some embodiments, the second terminal 130 may be considered as a second user using the second terminal 130 .

[0072] Optionally, the first user and the second user are in or not in the same field of view; or, the first user and the second user are in or not in the same game; or, the first user and the second user are in or not in the same battlefield. Optionally, the first user and the second user may belong to the same team, the same organization, have a friend relationship, or have temporary communication permissions.

[0073] Optionally, the applications installed on the first terminal 110 and the second terminal 130 are the same, or the applications installed on the two terminals are the same type of applications of different control system platforms. The first terminal 110 may refer to one of a plurality of terminals, and the second terminal 130 may refer to one of a plurality of terminals. This embodiment is only illustrated by the first terminal 110 and the second terminal 130. The device types of the first terminal 110 and the second terminal 130 are the same or different, and the device types include but are not limited to: at least one of a smart phone, a tablet computer, an e-book reader, a laptop computer, a desktop computer, a television, an augmented reality (AR) terminal, a virtual reality (VR) terminal, a mixed reality (MR) terminal, an XR terminal, a baffle reality (BR) terminal, a cinematic reality (CR) terminal, and a deceived reality (DR) terminal. The following embodiments are illustrated by taking the terminal including a smart phone as an example.

[0074] Those skilled in the art will appreciate that the number of the above terminals or users may be more or less. For example, the above terminal or user may be only one, or the above terminals or users may be dozens or hundreds, or more. The embodiments of the present application do not limit the number of terminals or users and the device types.

[0075] Figure 2 The interface schematic diagram of a method for editing the posture of a virtual character provided by an embodiment of the present application is shown. A game client 111 supporting a virtual environment is running in the first terminal 110. A posture editor for the virtual character is provided in the game client 111. After the user starts the posture editor, a posture editing interface 20 is displayed. A model virtual character 22 is displayed in the posture editing interface 20. The model virtual character 22 is displayed based on a skeleton model. There are multiple editable candidate skeleton points 24 on the model virtual character 22, and drag controls corresponding to three coordinate axes are displayed outside the model virtual character 22.

[0076] The embodiment of the present application provides a convenient editing mode. The convenient editing mode includes two editing modes:

[0077] Method 1: Direct drag

[0078] The user selects a target bone point that he or she wishes to edit on the model virtual character 22. Indicator lines of three coordinate axes are displayed on the selected target bone point. The three coordinate axes may be the horizontal x-axis, the vertical y-axis, and the longitudinal z-axis.

[0079] The user directly drags the target bone point to slide along any one of the three coordinate axes, for example, dragging left and right along the horizontal x-axis, or dragging up and down along the vertical y-axis, or dragging vertically along the 45-degree z-axis, thereby changing the position of the target bone point in the virtual environment.

[0080] At the same time, since the target bone chain belongs to one or more bones in the bone chain, the pose editor will link the positions of other bones in the bone chain in the virtual environment. For example, when the user drags the left knee bone point of the model virtual character 22, the pose editor will link the positions of the left thigh bone, left calf bone and left foot bone of the model virtual character 22 in the virtual environment.

[0081] Method 2: Slide the joystick

[0082] The user selects a target bone point that he wants to edit on the model virtual character 22. Drag controls 26 corresponding to the three coordinate axes are displayed outside the model virtual character 22. The drag control 26 has two display forms: a button form and a sliding rocker form.

[0083] When no touch operation is detected, the drag control 26 is displayed as a button by default.

[0084] When a touch operation on a certain drag control 26 is detected, the other two drag controls 26 are hidden, and the touched drag control 26 is switched from a button form to a sliding rocker form. In the sliding rocker form, the rocker can slide in the left and right directions. The left direction corresponds to the positive semi-axis direction of the coordinate axis, and the right direction corresponds to the negative semi-axis direction of the coordinate axis. The user changes the position of the target bone point in the virtual environment by dragging the drag control 26. At the same time, the posture editor will link the positions of other bones on the bone chain in the virtual environment.

[0085] When the user finishes the dragging operation on a certain drag control 26, the other two drag controls 26 are restored to display, and the dragged drag control 26 is restored from the sliding rocker form to the button form.

[0086] The user can perform multiple posture edits on different skeletal points, thereby adjusting the posture of the model virtual character 22 to a desired custom posture 28. Then, the user can save the custom posture 28 as a modeling work.

[0087] The custom gesture 28 is a UGC work that can be shared and applied between various accounts of the game client. The custom gesture 28 can be applied to the first virtual character controlled by the current user, and can also be shared with other users and applied to the second virtual character, the third virtual character, etc. controlled by other users. The current user can also perform secondary editing after saving to form other custom gestures 28.

[0088] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions. For example, the information involved in this application is obtained with full authorization, and the terminal and server only cache the information during the program operation, and will not solidify the storage and reuse the relevant data of the information.

[0089] Figure 3 A schematic diagram of a flow chart of a method for editing a virtual character's posture provided by an exemplary embodiment of the present application is shown. Figure 1 The first terminal 110 and / or the second terminal 130 are shown as an example for explanation. The method includes at least some of the following steps:

[0090] Step 220: In response to the pose creation request, displaying a pose editing interface of the model virtual character;

[0091] The terminal runs an application that supports a virtual environment, which can be a game client or a social client (such as a metaverse social program). The application provides one or more virtual characters, and each user account controls different virtual characters to play games, and different user accounts form friend relationships and / or group relationships.

[0092] Exemplarily, the game client includes a virtual character controlled by a user operation and a virtual character not controlled by a user operation. The virtual character controlled by a user operation can be displayed in the display interface of the virtual character for the user to view. When displaying the virtual character, the posture of the virtual character can be a posture preset by the game client. However, in the embodiment of the present application, the user can customize the posture of the virtual character.

[0093] If the user wants to customize the posture of the virtual character, a posture creation operation is performed in the game client to trigger a posture creation request. The terminal responds to the posture creation request and displays a posture editing interface, which is used to edit the posture of the model virtual character. The posture editing interface includes a model virtual character located in a virtual environment, and the user edits the posture on the model virtual character.

[0094] The model virtual character is a virtual character that serves as a model in the posture editing process. The model virtual character may be one of a plurality of candidate model virtual characters. The plurality of candidate model virtual characters may be divided according to factors such as body type, gender, and age. Exemplarily, the plurality of candidate model virtual characters include: a first model virtual character corresponding to an adult male, a second model virtual character corresponding to an adult female, a third model virtual character corresponding to a girl's body type, and a user-controlled virtual character (one of the above three body types + personalized face + personalized clothing).

[0095] Step 240: In response to the posture editing operation on the model virtual character, controlling the posture of the model virtual character to change so that the model virtual character is in a custom posture;

[0096] The user performs a posture editing operation on the model virtual character in the posture editing interface. The terminal controls the posture of the model virtual character to change according to the instructions of the posture editing operation based on the posture editing operation performed by the user. After the change, the model virtual character is in a custom posture after the user's editing. The custom posture refers to the posture obtained after the posture of the model virtual character is changed based on at least one posture editing operation.

[0097] In various embodiments, at least one of the different body parts of the model avatar is edited to change the pose of the model avatar. The different body parts include, but are not limited to, at least one of various skeletal points (joints and / or bones), gestures, expressions, facial orientation, and eye orientation.

[0098] Schematic reference Figure 4 On the left side of the posture editing interface 20, multiple menu items 31 are displayed: joints, orientation, gestures, and expressions. The joint menu is used to open the editing controls related to the skeleton points; the orientation menu is used to open the editing controls related to the facial orientation and the eye orientation; the gesture menu is used to open the editing controls related to the gestures; and the expression menu is used to open the editing controls related to the expressions.

[0099] based on Figure 4 The various editing controls shown can realize the posture editing of different body parts of the model virtual character. The user can perform multiple posture editing on different bone points to adjust the posture of the model virtual character to a desired custom posture.

[0100] Step 260: Based on the custom gesture presented by the model virtual character, generate gesture data for applying the custom gesture to the virtual character controlled by at least one account.

[0101] When the posture of the model virtual character reaches the posture expected by the user, the user stops performing the posture editing operation and performs the posture generation operation on the model virtual character to trigger a posture generation request. The terminal responds to the posture generation request and generates posture data of the custom posture based on the model virtual character in the posture. The posture data is used to indicate the custom posture.

[0102] In summary, the method provided in the embodiment of the present application enables the user to flexibly generate a variety of postures by performing posture editing operations on the model virtual character, and then apply the generated custom postures to the virtual character controlled by the current user or other users, thereby realizing a UGC generation, application and sharing solution for virtual character postures.

[0103] 1. Entrance to the posture editing function

[0104] Figure 5 A flowchart of a method for starting a gesture editing function provided by an exemplary embodiment of the present application is shown. This embodiment is illustrated by taking the method executed by a terminal as an example. The method includes:

[0105] Step 222: Displaying an entry for the gesture editing function in the application of the terminal;

[0106] Assuming that a first account is logged in to the application, the user controls the first virtual character corresponding to the first account to perform various activities in the application. The application provides multiple functions, including but not limited to: battle function, task completion, transaction, etc. In this embodiment, the application provides an entrance to the posture editing function.

[0107] There are one or more entrances to the gesture editing function. Exemplarily, the entrances to the gesture editing function include but are not limited to at least one of the following:

[0108] The first entry point for the posture editing function to create new edits based on system preset postures;

[0109] A second entry to the pose editing function for secondary editing based on the created pose.

[0110] Step 224: In response to the triggering operation on the entrance of the posture editing function, the posture editing interface of the model virtual character is displayed.

[0111] The trigger operation is at least one of a click operation, a double-click operation, a press operation, a slide operation, a voice control operation, and an eye control operation.

[0112] In response to a trigger operation on the entrance of the posture editing function, a posture editing interface of the model virtual character is displayed. The posture editing interface includes: a model virtual character located in a virtual environment, and at least one editing control for posture editing.

[0113] In some embodiments, the virtual environment is an independent virtual environment dedicated to gesture editing. The virtual environment is different from the virtual world of the virtual character's daily activities. In some embodiments, the virtual environment can also be a part of the virtual world of the virtual character's daily activities, such as a yard or a house.

[0114] In some embodiments, when the entrance is the first entrance, the initial posture of the model virtual character is a default posture, such as a standing posture with hands hanging down; when the entrance is the second entrance, the initial posture of the model virtual character is a created posture.

[0115] Exemplary references Figure 6 As shown, a newly created single-person work 41 is displayed in the styling record interface 10 of the application. The newly created single-person work 41 is the first entry of the posture editing function for newly editing based on the system preset posture. In response to the triggering operation of the newly created single-person work 41, the posture editing interface 20 of the model virtual character is displayed. In the posture editing interface 20, the initial posture of the model virtual character is the default posture.

[0116] Exemplary references Figure 7 As shown, the created styling works are displayed in the styling record interface 10 of the application. In response to the selection operation of the first styling work, the introduction interface 12 of the first styling work is displayed. The first styling work is a styling work created by the first account or other accounts. The introduction interface 12 of the first styling work displays an edit button 42, and the edit button 42 is the second entrance of the posture editing function for secondary editing based on the created posture. In response to the triggering operation of the edit button 42, the posture editing interface 20 of the model virtual character is displayed. In the posture editing interface 20, the posture of the model virtual character is the posture corresponding to the first styling work. In some embodiments, the secondary editing also requires the user to confirm before the editing can start, so as to avoid the user's misoperation.

[0117] Schematic combination reference Figure 4 Several general function buttons are also displayed on the posture editing interface 20. For example:

[0118] · Casual clothes button 32;

[0119] The model virtual character 22 in the posture editing interface 20 is displayed based on the skeleton model and the clothes attached to the outside of the skeleton model. By default, the clothes attached to the outside of the skeleton model are long clothes.

[0120] In response to the selection operation of the casual clothes button 32, the long clothing on the model virtual character 22 is replaced with underwear, so as to expose various body parts of the model virtual character 22, making it convenient for the user to view the bone changes on the bone model of the model virtual character 22 during the posture editing process; in response to the deselection operation of the casual clothes button 32, the underwear on the model virtual character 22 is replaced with long clothing, so as to facilitate the user to view the overall shape changes of the model virtual character 22 during the posture editing process.

[0121] Body shape switching button 33;

[0122] The posture editing interface 20 also provides a plurality of candidate model virtual characters, and each candidate model virtual character may correspond to a different body type. In this embodiment, three body types are provided as an example, and the plurality of candidate model virtual characters include: a first model virtual character corresponding to an adult male, a second model virtual character corresponding to an adult female, a third model virtual character corresponding to a girl body type, and a user-controlled virtual character (one of the above three body types + personalized face + personalized clothing).

[0123] In some embodiments, in response to a trigger operation on the body type switching button 33 , the model virtual character 22 in the posture editing interface 20 is switched to a model virtual character of another body type.

[0124] In some embodiments, in response to a trigger operation on the body shape switching button 33, multiple candidate model virtual characters are displayed; in response to a selection operation on a modal virtual character among the multiple candidate model virtual characters, the model virtual character 22 in the switching posture editing interface 20 is the selected model virtual character.

[0125] Undo button 34 and redo button 35;

[0126] In response to a trigger operation on the undo button 34 , the most recent gesture editing operation is undone; in response to a trigger operation on the restore button 35 , the most recently undone gesture editing operation is restored.

[0127] Hide button 36;

[0128] In response to a trigger operation on the hide button 36 , all or part of the multiple edit controls are hidden to provide more display space for the model virtual character 22 in the posture editing interface 20 .

[0129] · Lens control controls 37;

[0130] The images of the model virtual character 22 in the virtual environment are captured by a virtual camera model (referred to as lens). Figure 8 It is a schematic diagram of the working principle of a camera model located in a virtual environment provided by an embodiment of the present application. The schematic diagram shows the process of mapping a feature point P in a virtual environment 201 to a feature point p' in an imaging plane 203. The coordinates of the feature point p in the virtual environment 201 are in three-dimensional form, and the coordinates of the feature point p' in the imaging plane 203 are in two-dimensional form. Virtual environment 201 is a virtual environment corresponding to the virtual environment. Camera plane 202 is determined by the posture of the camera model. Camera plane 202 is a plane perpendicular to the shooting direction of the camera model, and imaging plane 203 and camera plane 202 are parallel to each other. Imaging plane 203 is the plane of the virtual environment located in the field of view when the virtual environment is observed when the camera model is imaged.

[0131] The lens control 37 is used to control the position of the lens in the virtual environment. For example, if the lens control 37 is a joystick, in response to the joystick 37 being dragged in at least one of the up, down, left, and right directions, the lens is controlled to move in the corresponding direction in the virtual environment.

[0132] In some embodiments, in response to an upward sliding operation on a blank space of the posture editing interface 20, the lens is controlled to rotate upward in the virtual environment; in response to a downward sliding operation on a blank space of the posture editing interface 20, the lens is controlled to rotate downward in the virtual environment; in response to a left sliding operation on a blank space of the posture editing interface 20, the lens is controlled to rotate left in the virtual environment; in response to a right sliding operation on a blank space of the posture editing interface 20, the lens is controlled to rotate right in the virtual environment.

[0133] In some embodiments, in response to a pinch-zoom operation or a mouse scroll-zoom operation on a blank area of ​​the gesture editing interface 20 , the camera is controlled to move forward or backward in the virtual environment to enlarge the size of the model virtual character in the model virtual environment.

[0134] In some embodiments, the lens control control 37 is displayed in the form of a floating rocker. In the posture editing interface, there are also some editing controls that are displayed in a floating window. When the floating window is dragged to the position where the lens control control 37 is located, the lens control control will adaptively offset to other free positions in the posture editing interface 20.

[0135] Reset lens button 38;

[0136] Since the user may change the lens position multiple times, in response to the trigger operation on the reset lens button, the lens position is quickly returned to the default initial position. Exemplarily, the default initial position of the lens is the center position directly in front of the model virtual character.

[0137] In some embodiments, the single-player mode and the multiplayer mode each require a lens default configuration, and the configuration parameters in the two lens default configurations are different.

[0138] 2. How to determine the initial posture

[0139] Fig. 9 A flowchart of a method for setting an initial posture provided by an exemplary embodiment of the present application is shown. This embodiment is illustrated by taking the method executed by a terminal as an example. The method includes:

[0140] Step 232: Display at least one preset posture option and / or at least one generated posture option;

[0141] The preset gesture options are gesture options provided natively by the application, and the generated gesture options are gesture options corresponding to the custom gestures edited by the first account and / or other accounts.

[0142] In some embodiments, at least one generated pose option is a pose option corresponding to a styling work recorded in the first account.

[0143] Indicatively Figure 7 As shown, an initial posture selection control 43 is displayed in the posture editing interface 20. The initial posture selection control 43 has two menu bars: the first menu bar "system" is used to trigger the display of at least one preset posture option in the initial posture selection control 43, and the second menu bar "my" is used to trigger the display of at least one generated posture option in the initial posture selection control 43.

[0144] In some embodiments, the initial posture selection control 43 is in a displayed state by default when entering the posture editing interface. The display is canceled after the user selects an initial posture option. In the subsequent editing process, in response to the display operation of the initial posture selection control 43, the initial posture selection control 43 is switched from a hidden state to a displayed state; in response to the hiding operation of the initial posture selection control 43, the initial posture selection control is switched from a displayed state to a hidden state.

[0145] For example, Figure 7 As shown, at least one preset posture option includes: blowing posture, wishing posture, fist-raising posture, akimbo posture, chest-hugging posture, etc.

[0146] Step 234: In response to a selection operation of a first posture option among at least one preset posture option, an initial posture of the model virtual character in the virtual environment is set to a first posture corresponding to the first posture option.

[0147] Optionally, the first posture option stores posture data corresponding to the first posture. The posture data corresponding to the first posture is imported into the skeleton model of the model virtual character, so that the initial posture of the model virtual character in the virtual environment is set to the first posture corresponding to the first posture option.

[0148] Step 236: In response to a selection operation of a second posture option among at least one of the generated posture options, the initial posture of the model virtual character in the virtual environment is set to a second posture corresponding to the second posture option.

[0149] Optionally, the second posture option stores posture data corresponding to the second posture. The posture data corresponding to the second posture is imported into the skeleton model of the model virtual character, so that the initial posture of the model virtual character in the virtual environment is set to the second posture corresponding to the second posture option.

[0150] In some embodiments, during the posture editing process, the user can still change the initial posture of the model virtual character. During the process of switching to the next initial posture, if the initial posture before switching has been edited, a second confirmation is required before switching to the next initial posture.

[0151] In summary, the method provided in this embodiment provides at least one preset posture option preset by the system, so that the user can use several relatively basic preset postures as the starting point for creating a custom posture, thereby reducing a large number of operations in the posture editing process. For electronic devices with limited operation modes such as mobile phones and tablets, it can reduce the user's human-machine operation cost, making it easier to create more personalized custom postures with less human-machine operation.

[0152] The method provided in this embodiment also provides at least one generated posture option created by the current user and / or other users. The current user can use the custom posture generated by other users as the starting point for secondary creation, and can add his own creativity based on the creativity of other users, thereby facilitating the generation of a custom state that integrates the creativity of different users.

[0153] 3. Posture Editing Function

[0154] Fig.10 A schematic diagram of a skeleton model of a virtual character provided by an exemplary embodiment of the present application is shown. The skeleton model includes a plurality of skeleton chains. Each skeleton chain includes at least one skeleton, and joints are formed between adjacent skeletons.

[0155] Exemplarily, the multiple skeleton chains include:

[0156] Head bone chain, including head bones and neck bones.

[0157] The upper body skeleton chain includes: chest skeleton, waist skeleton, left hand skeleton chain, and right hand skeleton chain. The left hand skeleton chain includes: left clavicle skeleton, left upper arm skeleton, left forearm skeleton, and left hand skeleton; the right hand skeleton chain includes: right clavicle skeleton, right upper arm skeleton, right forearm skeleton, and right hand skeleton.

[0158] The lower body skeleton chain includes: pelvic skeleton, left leg skeleton chain and right leg skeleton chain. The left leg skeleton chain includes: left thigh skeleton, left calf skeleton and left foot skeleton; the right leg skeleton chain includes: right thigh skeleton, right calf skeleton and right foot skeleton.

[0159] Set the representative joints or bones in the above skeleton model as editable bone points. For example, the editable bone points include: head bone point, neck bone point, chest bone point, waist bone point, left shoulder bone point, left elbow bone point, left hand bone point, right shoulder bone point, right elbow bone point, right hand bone point, left hip bone point, left knee bone point, left foot bone point, right hip bone point, right knee bone point, and right foot bone point.

[0160] Exemplarily, at least one of the following mode selection buttons is displayed on the posture editing interface: joint mode, orientation mode, gesture mode, and expression mode. The joint mode includes: convenient editing mode and expert editing mode.

[0161] In response to the selection operation for the joint mode, the editing controls related to the posture editing of the bone point are displayed. Further, in response to the selection operation for the convenient editing mode, the posture editing of the bone point and at least two bones on the bone chain corresponding to the bone point is performed based on the IK mode; in response to the selection operation for the expert editing mode, the posture editing of the single bone corresponding to the bone point is performed.

[0162] This application focuses on the relevant parts of the above-mentioned convenient editing mode.

[0163] Fig.11 A flowchart of a method for editing the posture of a virtual character provided by an exemplary embodiment of the present application is shown. This embodiment is illustrated by taking the method executed by a terminal as an example. The method includes:

[0164] Step 320: Displaying a model virtual character and at least one candidate skeleton point in a virtual environment;

[0165] In the pose editing interface, a model virtual character and at least one candidate skeleton point are displayed in the virtual environment.

[0166] Schematic reference Fig.12 The posture editing interface 20 includes a skeleton point schematic model 28 displayed by a HUD control and an option control of at least one candidate skeleton point connected to a relevant part of the skeleton point schematic model 28 by a lead line. The skeleton point schematic model 28 is a two-dimensional schematic diagram independent of the model virtual character 22. The option controls of these candidate skeleton points display the name of the current skeleton point.

[0167] In some embodiments, the posture editing interface 20 also includes at least one candidate bone point 24 attached to the bone model of the model virtual character 22. These candidate bone points 24 are displayed at corresponding positions of the bone model of the model virtual character 22 as point controls.

[0168] Exemplarily, at least one candidate bone point 24 includes: a head bone point, a neck bone point, a back bone point, a waist bone point, a left shoulder bone point, a left elbow bone point, a left hand bone point, a right shoulder bone point, a right elbow bone point, a right hand bone point, a left hip bone point, a left knee bone point, a left foot bone point, a right hip bone point, a right knee bone point, and a right foot bone point.

[0169] Step 340: In response to a selection operation on a target bone point in at least one candidate bone point, displaying an edit control for editing the target bone point;

[0170] The selection operation is at least one of a click operation, a double-click operation, a press operation, a slide operation, a voice control operation, and an eye control operation.

[0171] In some embodiments, in response to a selection operation on a target bone point option among at least one candidate bone point of the bone point schematic model 28, an editing control for editing the target bone point is displayed; in some embodiments, in response to a selection operation on a target bone point among at least one candidate bone point 24 on the model virtual character 22, an editing control for editing the target bone point is displayed.

[0172] Schematic reference Fig.12 In this embodiment, the target bone point is taken as an example of the left knee bone point.

[0173] Step 360: In response to the editing operation on the editing control, change the position of the target bone point in the virtual environment, and link the position of at least one bone bound to the target bone point in the virtual environment;

[0174] The skeleton model includes at least one skeleton chain. Each skeleton chain includes a root skeleton and at least one terminal skeleton. All or part of the skeleton chain also includes an intermediate skeleton between the root skeleton and the terminal skeleton. In different embodiments, the skeleton chain is divided in different ways. Fig.10 , the skeleton model includes:

[0175] Head bone chain;

[0176] Schematically, the head skeleton chain includes: head skeleton, neck skeleton, and chest skeleton. The neck skeleton is the next level skeleton of the chest skeleton, and the head skeleton is the next level skeleton of the neck skeleton. At the same time, the head skeleton is also the terminal skeleton. It should be noted that the head skeleton may include multiple skeletons, such as multiple facial skeletons used to realize expression display.

[0177] Torso skeleton chain;

[0178] Schematically, the trunk skeleton chain includes: chest skeleton, waist skeleton and pelvic skeleton. When the trunk skeleton point located at the center of the human body is the first-level skeleton, the pelvic skeleton and waist skeleton are the next-level skeletons of the trunk skeleton point, and the chest skeleton is the next-level skeleton of the waist skeleton.

[0179] Left hand skeleton chain;

[0180] Schematically, the left hand skeleton chain includes: chest skeleton, left clavicle skeleton, left upper arm skeleton, left forearm skeleton, and left hand skeleton. The left clavicle skeleton is the next level skeleton of the chest skeleton, the left upper arm skeleton is the next level skeleton of the left clavicle skeleton, the left forearm skeleton is the next level skeleton of the left upper arm skeleton, and the left hand skeleton is the next level skeleton of the left forearm skeleton. At the same time, the left hand skeleton is also the terminal skeleton. It should be noted that the left hand skeleton may include multiple skeletons, such as multiple metacarpal bones and phalangeal bones for realizing gesture display.

[0181] Right hand skeleton chain;

[0182] Schematically, the right hand skeleton chain includes: chest skeleton, right clavicle skeleton, right upper arm skeleton, right forearm skeleton, and right hand skeleton. The right clavicle skeleton is the next level skeleton of the chest skeleton, the right upper arm skeleton is the next level skeleton of the right clavicle skeleton, the right forearm skeleton is the next level skeleton of the right upper arm skeleton, and the right hand skeleton is the next level skeleton of the right forearm skeleton. At the same time, the right hand skeleton is also the terminal skeleton. It should be noted that the right hand skeleton may include multiple bones, such as multiple metacarpal bones and phalangeal bones for realizing gesture display.

[0183] Left leg bone chain;

[0184] Schematically, the left leg skeleton chain includes: waist skeleton, left thigh skeleton, left calf skeleton, and left foot skeleton. The left thigh skeleton is the next level skeleton of the waist skeleton, the left calf skeleton is the next level skeleton of the left thigh skeleton, and the left foot skeleton is the next level skeleton of the left calf skeleton. At the same time, the left foot skeleton is also the terminal skeleton. It should be noted that the left foot skeleton may include multiple bones, such as multiple toe bones.

[0185] Right leg bone chain;

[0186] Schematically, the right leg skeleton chain includes: waist skeleton, right thigh skeleton, right calf skeleton, and right foot skeleton. The right thigh skeleton is the next level skeleton of the waist skeleton, the right calf skeleton is the next level skeleton of the right thigh skeleton, and the right foot skeleton is the next level skeleton of the right calf skeleton. At the same time, the right foot skeleton is also the terminal skeleton. It should be noted that the right foot skeleton may include multiple bones, such as multiple toe bones.

[0187] In response to an editing operation on an editing control, the position of a target bone point in a virtual environment is changed, and the position of at least one bone bound to the target bone point in the virtual environment is changed in conjunction. The at least one bone bound to the target bone point is usually a bone on the same bone chain as the target bone point. In some embodiments, the at least one bone bound to the target bone point includes all bones on the same bone chain as the target bone point. In some embodiments, the at least one bone bound to the target bone point includes a portion of bones on the same bone chain as the target bone point, such as bones located below the target bone point.

[0188] In summary, the method provided in this embodiment provides the player with an editing control of the target bone point, responds to the editing operation on the editing control, simultaneously changes the position of the target bone point in the virtual environment, and linkedly changes the position of at least one bone bound to the target bone point in the virtual environment, thereby achieving one editing operation that can change the posture editing of multiple bones, providing the player with a convenient posture editing solution, and the user can editably generate a variety of custom postures, and subsequently apply the generated custom postures to the virtual characters controlled by the current user or other users.

[0189] Method 1: Direct drag method

[0190] Fig.13 A flowchart of a method for editing the posture of a virtual character provided by an exemplary embodiment of the present application is shown. This embodiment is illustrated by taking the method executed by a terminal as an example. The method includes:

[0191] Step 320: Displaying a model virtual character and at least one candidate skeleton point in a virtual environment;

[0192] Exemplarily, at least one candidate bone point includes: head bone point, neck bone point, back bone point, waist bone point, left shoulder bone point, left elbow bone point, left hand bone point, right shoulder bone point, right elbow bone point, right hand bone point, left hip bone point, left knee bone point, left foot bone point, right hip bone point, right knee bone point, and right foot bone point.

[0193] Step 341: In response to a selection operation on a target bone point among at least one candidate bone point, display a first drag control located on the target bone point;

[0194] refer to Fig.12 As shown, the editing control for editing the target bone point includes: a first drag control 261 attached to the target bone point, and the first drag control 261 can be a point control or a ball control attached to the target bone point. At the same time, the first drag control 261 displays indicator lines of three coordinate axes.

[0195] The virtual environment is built based on the world coordinate system. The three coordinate axes are the three coordinate axes in the world coordinate system, and the three coordinate axes on the private coordinate system built with the target bone point as the origin.

[0196] Most target bone points can be dragged on three axes. Due to the limitation of limb bending limit and other source domains, a small number of target bone points can only be dragged on one or two axes. In this case, the indicator line corresponding to the non-draggable axis is displayed as unavailable or hidden.

[0197] Step 361: In response to a dragging operation of dragging the first drag control along the first coordinate axis, changing the position of the target bone point in the virtual environment along the first coordinate axis;

[0198] In response to the dragging operation of dragging the first drag control 261 along the x-axis, the position of the target bone point in the virtual environment is changed along the x-axis; in response to the dragging operation of dragging the first drag control 261 along the y-axis, the position of the target bone point in the virtual environment is changed along the y-axis; in response to the dragging operation of dragging the first drag control 261 along the z-axis, the position of the target bone point in the virtual environment is changed along the z-axis.

[0199] refer to Fig.12 As shown, the three coordinate axes may be the horizontal x-axis, the vertical y-axis, and the longitudinal z-axis.

[0200] The user directly drags the target bone point to slide along any one of the three coordinate axes, for example, dragging left and right along the horizontal x-axis, or dragging up and down along the vertical y-axis, or dragging vertically along the 45-degree z-axis, thereby changing the position of the target bone point in the virtual environment.

[0201] Step 362: Based on the position of the target bone point in the virtual environment, the position of at least one bone bound to the target bone point in the virtual environment is changed in a linked manner;

[0202] Schematically, the model virtual character 22 is displayed based on a skeleton model, and the skeleton model includes at least one skeleton chain.

[0203] Schematically, this step includes: using at least one bone on the same bone chain as the target bone point as at least one bone bound to the target bone point; based on the position of the target bone point in the virtual environment, using IK linkage to change the position of at least one bone bound to the target bone point in the virtual environment.

[0204] In some embodiments, at least one bone that is on the same skeletal chain as the target skeletal point and is located above the target skeletal point is used as at least one bone bound to the target skeletal point. In some embodiments, at least one bone that is on the same skeletal chain as the target skeletal point and is located below the target skeletal point is used as at least one bone bound to the target skeletal point. In some embodiments, all bones that are on the same skeletal chain as the target skeletal point are used as at least one bone bound to the target skeletal point.

[0205] Step 370: when the bone corresponding to the target bone point is dragged to the restricted position, keep the bone corresponding to the target bone point at the restricted position;

[0206] When the bone corresponding to the target bone point is dragged to the restricted position, if the drag operation in the same drag direction continues to be received, the bone corresponding to the target bone point will be kept in the restricted position. In other words, when the bone corresponding to the target bone point remains in the restricted position, the drag control will no longer respond to editing operations beyond the restricted position, but can still respond to editing operations within the restricted position.

[0207] The restricted position includes at least one of a first restricted position and a second restricted position.

[0208] The first restricted position is set based on the physiological angle limit of the skeleton of the model virtual character. For example, there is a limit on the angle of the human arm when twisting backwards, and there is a limit on the angle of the human head when tilting back.

[0209] The second restricted position is set based on the editing freedom restriction. The editing freedom can be set by the developer or the user. For example, after creating a custom pose, the user does not want the waist design in the custom pose to be significantly changed, so the editing freedom restriction can be set for the waist of the custom pose. After that, other users can only make small adjustments to the waist of the model virtual character within the editing freedom restriction. Schematically, the first restricted position can be as shown in the following Table 1.

[0210] Table 1 The first restricted position of each bone point

[0211]

[0212]

[0213] Step 380: Based on the custom gesture presented by the model virtual character, generate gesture data for applying the custom gesture to the virtual character controlled by at least one account.

[0214] When the posture of the model virtual character reaches the posture expected by the user, the user stops performing the posture editing operation and performs the posture generation operation for the model virtual character to trigger the posture generation request. In response to the posture generation request, the terminal generates posture data of the custom posture based on the model virtual character in the custom posture. The posture data of the custom posture can be absolute posture data or relative posture data, and the relative posture data is used to indicate the offset value of the custom posture relative to the initial posture.

[0215] The posture data and attached information of the custom posture will be saved as the modeling work of the custom posture. The attached information includes at least one of the following information: the account information of the creator, the creation time, the personalized information of the model virtual character, the body shape information of the model virtual character, the posture data of the initial posture of the model virtual character, the name of the custom posture, and the preview image of the custom posture.

[0216] The custom gesture modeling work can be applied to the virtual character controlled by the first account, or can be shared by the first account to other accounts and then applied to the virtual characters controlled by other accounts, so that the custom gesture can be shared and applied between various accounts as a kind of UGC content.

[0217] In summary, the method provided in this embodiment allows the user to change the position of the target bone point by directly dragging, thereby linking and changing at least one bone on the same bone chain as the target bone point. Since directly dragging the target bone point on the model virtual character is very intuitive, similar to the operation of swinging a "puppet", the user can intuitively operate without any learning cost, and has very good usability.

[0218] Method 2: Sliding joystick method

[0219] Fig.14 A flowchart of a method for editing the posture of a virtual character provided by an exemplary embodiment of the present application is shown. This embodiment is illustrated by taking the method executed by a terminal as an example. The method includes:

[0220] Step 320: Displaying a model virtual character and at least one candidate skeleton point in a virtual environment;

[0221] Exemplarily, at least one candidate bone point includes: head bone point, neck bone point, back bone point, waist bone point, left shoulder bone point, left elbow bone point, left hand bone point, right shoulder bone point, right elbow bone point, right hand bone point, left hip bone point, left knee bone point, left foot bone point, right hip bone point, right knee bone point, and right foot bone point.

[0222] Step 342: In response to a selection operation on a target bone point among at least one candidate bone point, displaying second drag controls respectively corresponding to three coordinate axes for editing the target bone point, each second drag control being used to implement a drag control corresponding to one of the three coordinate axes;

[0223] Schematic reference Fig.15 The editing controls for editing the target bone point include: second drag controls 262 corresponding to the three coordinate axes respectively, and each second drag control 262 is used to implement the drag control corresponding to one of the three coordinate axes.

[0224] The virtual environment is constructed based on the world coordinate system. The three coordinate axes are three coordinate axes in the world coordinate system, and are three coordinate axes on a private coordinate system constructed with the target bone point as the origin. Exemplarily, the second drag controls corresponding to the three coordinate axes include: a second drag control corresponding to the x-axis, a second drag control corresponding to the y-axis, and a second drag control corresponding to the z-axis.

[0225] Most target bone points support dragging on three coordinate axes. Due to the source domain such as limb bending limit, a small number of target bone points only support dragging on one or two coordinate axes. In this case, the second drag control corresponding to the non-draggable coordinate axis is displayed as unavailable or hidden.

[0226] Optionally, the second drag control 262 corresponding to the three coordinate axes is implemented using a HUD control and is displayed separately from the model virtual character.

[0227] Step 351: when a touch operation on the second drag control corresponding to the first coordinate axis is detected, the second drag controls corresponding to the second coordinate axis and the third coordinate axis are undisplayed;

[0228] The touch operation is a touch down event detected on the second drag control 262 corresponding to the first coordinate axis. Exemplarily, a click operation includes a touch down event and a touch up event. A slide / drag operation includes: a touch down event, at least one touch move event and a touch up event. In some embodiments, the touch down event is also called a touch start event, and the touch up event is also called a touch end event.

[0229] The second drag control 262 corresponding to the first coordinate axis is the second drag control selected from the three second drag controls. The first coordinate axis is any one of the three coordinate axes. In this embodiment, the first coordinate axis is an x-axis for example.

[0230] The second coordinate axis and the third coordinate axis are the other two coordinate axes except the first coordinate axis among the three coordinate axes.

[0231] Since the display area on the terminal is limited, in order to provide more user operation area, when a touch operation on the first and second drag controls is detected, the second drag controls corresponding to the second coordinate axis and the third coordinate axis are undisplayed.

[0232] Step 352: when a touch operation on the second drag control corresponding to the first coordinate axis is detected, the second drag control corresponding to the first coordinate axis is switched from a button form to a sliding rocker form;

[0233] In some embodiments, the three second drag controls 262 have two display forms: a button form and a sliding rocker form. The sliding rocker form includes a sliding slot and a rocker located on the sliding slot. By default, the three second drag controls are displayed as button forms. The display area of ​​a single button-shaped second drag control is smaller than the display area of ​​a single circular wheel form.

[0234] When a touch operation on the second drag control 262 corresponding to the first coordinate axis is detected, the second drag control 262 corresponding to the first coordinate axis is switched from a button form to a sliding rocker form 263 .

[0235] Step 363: In response to the dragging operation on the second drag control corresponding to the first coordinate axis, the target bone point is used as a drag base point, and the bone corresponding to the target bone point is dragged around the first coordinate axis;

[0236] In response to the operation of dragging the second drag control 262 corresponding to the first coordinate axis in a first drag direction, the bone corresponding to the target bone point is dragged in a clockwise direction around the first coordinate axis with the target bone point as the drag base point; and / or, in response to the operation of dragging the second drag control 262 corresponding to the first coordinate axis along the second drag direction, the bone corresponding to the target bone point is dragged in a counterclockwise direction around the first coordinate axis with the target bone point as the drag base point.

[0237] Step 364: based on the position of the target bone point in the virtual environment, the position of at least one bone bound to the target bone point in the virtual environment is changed in a linked manner;

[0238] Schematically, the model avatar is displayed based on a skeleton model, and the skeleton model includes at least one skeleton chain;

[0239] Schematically, this step includes: using at least one bone on the same bone chain as the target bone point as at least one bone bound to the target bone point; based on the position of the target bone point in the virtual environment, using IK linkage to change the position of at least one bone bound to the target bone point in the virtual environment.

[0240] In some embodiments, at least one bone that is on the same skeletal chain as the target skeletal point and is located above the target skeletal point is used as at least one bone bound to the target skeletal point. In some embodiments, at least one bone that is on the same skeletal chain as the target skeletal point and is located below the target skeletal point is used as at least one bone bound to the target skeletal point. In some embodiments, all bones that are on the same skeletal chain as the target skeletal point are used as at least one bone bound to the target skeletal point.

[0241] Step 370: when the bone corresponding to the target bone point is dragged to the restricted position, keep the bone corresponding to the target bone point at the restricted position;

[0242] When the bone corresponding to the target bone point is dragged to the restricted position, if the drag operation in the same drag direction continues to be received, the bone corresponding to the target bone point will be kept in the restricted position. In other words, when the bone corresponding to the target bone point is kept in the restricted position, the second drag control will no longer respond to the editing operation beyond the restricted position, but can still respond to the editing operation within the restricted position.

[0243] The restricted position includes at least one of a first restricted position and a second restricted position.

[0244] The first restricted position is set based on the physiological angle limit of the skeleton of the model virtual character. For example, there is a limit on the angle of the human arm when twisting backwards, and there is a limit on the angle of the human head when tilting back.

[0245] The second restricted position is set based on the editing freedom limit. The editing freedom can be set by the developer or the user. For example, after creating a custom pose, the user does not want the waist design in the custom pose to be greatly changed, so the editing freedom limit can be set for the waist of the custom pose. After that, other users can only make small adjustments to the waist of the model avatar within the editing freedom limit.

[0246] In some embodiments, when a touch-off operation on the first drag control is detected, the second drag control and the third drag control are restored to display. In some embodiments, when a touch-off operation on the first drag control is detected, the first drag control is switched from a sliding rocker form back to a button form.

[0247] Step 380: Based on the custom gesture presented by the model virtual character, generate gesture data for applying the custom gesture to the virtual character controlled by at least one account.

[0248] When the posture of the model virtual character reaches the posture expected by the user, the user stops performing the posture editing operation and performs the posture generation operation for the model virtual character to trigger the posture generation request. In response to the posture generation request, the terminal generates posture data of the custom posture based on the model virtual character in the custom posture. The posture data of the custom posture can be absolute posture data or relative posture data, and the relative posture data is used to indicate the offset value of the custom posture relative to the initial posture.

[0249] The posture data and attached information of the custom posture will be saved as the modeling work of the custom posture. The attached information includes at least one of the following information: the account information of the creator, the creation time, the personalized information of the model virtual character, the body shape information of the model virtual character, the posture data of the initial posture of the model virtual character, the name of the custom posture, and the preview image of the custom posture.

[0250] The custom gesture modeling work can be applied to the virtual character controlled by the first account, or can be shared by the first account to other accounts and then applied to the virtual characters controlled by other accounts, so that the custom gesture can be shared and applied between various accounts as a kind of UGC content.

[0251] In summary, the method provided in this embodiment, by providing drag controls corresponding to the three coordinate axes, allows the user to perform refined posture editing on a single bone point in the three directions of the x-axis, y-axis, and z-axis, and then link changes to other bones bound to the bone point. Through multiple posture editing by the user, the model virtual character can be edited into a variety of desired postures, which provides a refined level of posture editing.

[0252] The method provided in this embodiment can also reduce the number of controls displayed on the posture editing interface by canceling the display of the rotation controls corresponding to the second and third coordinate axes when the rotation control corresponding to the first coordinate axis is selected, thereby providing the user with a larger operating space while reducing information interference to the user.

[0253] The method provided in this embodiment also uses a smaller area to display multiple drag controls on the gesture editing interface by switching the first drag control from the circular wheel form to the button form and restoring the display of the second drag control and the third drag control after the touch operation on the drag control corresponding to the first coordinate axis ends. When the terminal is a mobile phone, tablet computer or other device, the limited screen area is fully utilized to provide a primary entrance for multiple drag controls.

[0254] In some embodiments, the above method further comprises:

[0255] The first custom posture and the second custom posture are obtained. The first custom posture is used as the starting posture of the action, and the second custom posture is used as the ending posture of the action. The posture data of the first custom posture and the posture data of the second custom posture, and the expected number of intermediate postures are input into the neural network model, and the neural network model predicts the posture data of at least one intermediate posture transitioning from the first custom posture to the second custom posture. The expected number of intermediate postures is set by the user.

[0256] Based on the posture data of the first custom posture, at least one intermediate posture and the second custom posture, a custom action of the model virtual character is generated, and the custom action is a coherent dynamic skeletal animation. The neural network model can be trained by using various actions of the virtual character that have been designed in the game application as a training set.

[0257] 4. Saving custom postures

[0258] Fig.16 A flowchart of a method for saving a custom gesture provided by an exemplary embodiment of the present application is shown. The method includes:

[0259] Step 391: Display a save button for the custom gesture;

[0260] The Save button can be displayed in more than one place and at more than one time.

[0261] Combined with reference Fig.12 , a save button 39 is displayed on the posture editing interface 20. In some embodiments, when exiting the posture editing interface, a first pop-up window is displayed, and a save button is displayed in the first pop-up window. In some embodiments, when changing the initial posture of the model virtual character, a second pop-up window is displayed, and a save button is displayed in the second pop-up window.

[0262] Step 392: Save the posture data and auxiliary information of the custom posture as a modeling work.

[0263] The posture data of the custom posture is absolute posture data, or relative posture data relative to the initial posture. The absolute posture data stores the position information and rotation information of each skeleton of the model virtual character in the virtual environment. The relative posture data stores the posture offset value of each skeleton of the model virtual character relative to the initial posture. Optionally, the posture offset value includes at least one of the position offset value and the rotation offset value of each skeleton relative to the initial posture.

[0264] The posture data and attached information of the custom posture will be saved as the modeling work of the custom posture. The attached information includes at least one of the following information: the unique identifier of the custom posture, the account information of the creator, the creation time, the personalized information of the model virtual character, the body shape information of the model virtual character, the posture data of the initial posture of the model virtual character, the name of the custom posture, and the preview image of the custom posture.

[0265] Optionally, the unique identifier of the above-mentioned custom posture is generated by the terminal or the server.

[0266] In summary, the method provided in this embodiment saves the gesture data and attached information of the custom gesture as a styling work, and saves the styling work as a UGC, so as to facilitate sharing and application of the custom gesture between different accounts.

[0267] 5. Application of custom gestures

[0268] Fig.17 A flowchart of a method for applying a custom gesture provided by an exemplary embodiment of the present application is shown. The method comprises:

[0269] Step 393: In response to the operation of applying the custom posture to the first virtual character, displaying the first virtual character in the custom posture;

[0270] The first virtual character is a virtual character controlled by a first account. The first account is an account currently logged in the client.

[0271] In some embodiments, illustratively, Fig.18As shown, an action interface 50 is displayed in the client, and the action interface 50 displays multiple action options. The multiple action options include a single-person styling option 51. In response to the triggering operation of the single-person styling option 51, a styling record panel 52 is displayed. Multiple styling works are displayed on the styling record panel 52, and each styling work corresponds to a system preset posture or a custom posture. Optionally, the styling record panel 52 includes three menu bars: the first menu bar "System" is used to trigger the display of at least one preset posture option in the styling record panel 52, the second menu bar "My" is used to trigger the display of at least one generated posture option in the styling record panel 52, and the third menu bar "All" is used to trigger the display of all posture options owned or collected by the current account in the styling record panel 52.

[0272] Illustratively, in response to the user's selection operation on the modeling work "Single-player Plan 1", the custom gesture corresponding to the modeling work "Single-player Plan 1" is applied to the first virtual character.

[0273] In some embodiments, the user can also select a styling work to apply to the first virtual character through "photography interface → action → styling → list on the right".

[0274] In some embodiments, Figure 7 As shown in the top interface diagram in the figure, in the introduction interface 12 of the first modeling work, in response to a trigger operation on the application control of the first modeling work, the first modeling work can also be applied to the first virtual character.

[0275] In some embodiments, absolute posture data of a custom posture is acquired, and the absolute posture data is applied to the first virtual character to display the first virtual character in the custom posture.

[0276] In some embodiments, relative posture data of a custom posture is obtained, and the relative posture data of the custom posture is an offset value of the custom posture relative to the initial posture. Absolute posture data of the initial posture corresponding to the custom posture is obtained, and the relative posture data of the custom posture and the posture data of the initial posture are superimposed to obtain absolute posture data of the custom posture. The absolute posture data is applied to the first virtual character to display the first virtual character in the custom posture.

[0277] Step 394: In response to the operation of sharing the custom gesture to the second account, displaying the sharing information of the custom gesture in the network space to which the second account has access rights, so that the second account can apply the custom gesture on the second virtual character;

[0278] The second virtual character is a virtual character controlled by the second account.

[0279] In some embodiments, the first account and the second account have a friend relationship. In response to the operation of sharing the custom gesture to the chat window or game mailbox corresponding to the second account, the sharing information of the styling work corresponding to the custom gesture is displayed in the chat window or game mailbox to which the second account has access rights, so that the second account can apply the custom gesture on the second virtual character.

[0280] In some embodiments, illustratively, Fig.19 As shown, a "Send to" button 61 is displayed on the introduction interface of the modeling work. In response to the triggering operation of the "Send to" button 61, a world group option 62 and a designated friend option 63 are displayed. In response to the triggering operation of the designated friend option 63, multiple friends of the first account on the network are displayed, such as sworn brothers, friends with a master-apprentice relationship, and friends across servers. In response to the triggering operation of the second account, the custom gesture is shared to the second account.

[0281] In some embodiments, the sharing information displays the name, creator, creation time, preview image, etc. of the modeling work. In response to the triggering operation on the sharing information, the relevant data of the modeling work is saved to the modeling record of the second account.

[0282] In some embodiments, the client logged into the second account obtains the absolute posture data of the custom posture, applies the absolute posture data to the second virtual character, and displays the second virtual character in the custom posture.

[0283] In some embodiments, the client logged in with the second account obtains relative posture data of the custom posture, and the relative posture data of the custom posture is the offset value of the custom posture relative to the initial posture. The absolute posture data of the initial posture corresponding to the custom posture is obtained, and the relative posture data of the custom posture and the posture data of the initial posture are superimposed to obtain the absolute posture data of the custom posture. The absolute posture data is applied to the second virtual character to display the second virtual character in the custom posture.

[0284] Step 395: In response to the operation of sharing the custom gesture to the designated group, displaying the sharing information of the custom gesture in the designated group so that the third account in the designated group can apply the custom gesture on the third virtual character;

[0285] The third virtual character is a virtual character controlled by a third account.

[0286] In some embodiments, the first account and the third account belong to the same group (or group), but do not necessarily have a friend relationship.

[0287] In some embodiments, illustratively, Fig.19 and Fig. 20 As shown, a "Send to" button 61 is displayed on the introduction interface of the modeling work. In response to the triggering operation of the "Send to" button 61, a world group option 62 and a designated friend option 63 are displayed. In response to the triggering operation of the world group option 62, the custom gesture is shared in the dialog box of the world group, which is displayed as a sharing message 64. Other accounts in the world group view the preview image of the modeling work through the sharing message 64, and click on the sharing message 64 to apply the custom gesture to the virtual character controlled by themselves.

[0288] In some embodiments, the sharing information displays the name, creator, creation time, preview image, etc. of the modeling work. In response to the triggering operation on the sharing information, the relevant data of the modeling work is saved in the modeling record of the third account.

[0289] In some embodiments, a client logged in with a third account obtains relative posture data of a custom posture, where the relative posture data of the custom posture is an offset value of the custom posture relative to the initial posture. The absolute posture data of the initial posture corresponding to the custom posture is obtained, and the relative posture data of the custom posture and the posture data of the initial posture are superimposed to obtain the absolute posture data of the custom posture. The absolute posture data is applied to the third virtual character to display the third virtual character in the custom posture.

[0290] Fig.21 A flowchart of a method for editing a virtual character's posture provided by an exemplary embodiment of the present application is shown. The method is executed by a terminal, in which a client for logging into a first account is running. The method includes:

[0291] 1. Start;

[0292] Users can open the shape editor through the shape editor entrance in the client.

[0293] In some embodiments, the modeling editor can be opened by creating a new single-player work. After the user's secondary confirmation, the modeling system is then transferred to an independent virtual environment. The independent virtual environment can be considered as a plane dedicated to modeling.

[0294] 2. Select the initial posture;

[0295] After entering the modeling system, multiple preset postures will be provided, which are several different postures automatically configured by the modeling system. At this time, the user can select a preset posture from them as the initial posture.

[0296] 3. Customize and edit bones;

[0297] Since the system will enter the joint mode by default, the character's various bone points will be displayed. Users can select the bone points that need to be edited to change the local bones of the posture. Users can choose to edit in the IK editing mode or in the expert rotation editing mode.

[0298] When the convenient editing mode is selected, the corresponding interactive interface will pop up. The user can directly drag the target bone point on the model virtual character, and drive the multiple bones bound upward to the target bone point to move together; and the UI can be used to adjust the wheel to move in the X / Y / Z directions; the three-axis model direction lines are displayed on the target bone point to facilitate the user to understand the direction of movement.

[0299] When the expert rotation editing mode is selected, the corresponding interactive interface will pop up. The user can use the UI to adjust the wheel to move the bone corresponding to the target bone point in the X / Y / Z directions; the direction line of the three-dimensional spherical model is displayed on the target bone point to facilitate understanding of the arc position of the rotation.

[0300] 4. Detection limitations;

[0301] When the user adjusts the skeleton, the modeling system needs to detect at least one of the following limitations:

[0302] (1) Skeletal physiological rotation angle limit: The x / y / z three-axis limit rotation angle of each bone. This limit rotation angle is planned and configured to control it not to exceed the physiological limit of the model virtual character.

[0303] (2) Skeleton editing freedom rotation angle limit: The x / y / z three-axis rotation angle limit of each bone is set to control the change amount and not deviate too much from the initial posture.

[0304] 5. Save data;

[0305] Users can save custom poses. When confirming to save, the modeling system will record the absolute value of the rotation angle of each bone point; and the client will take a photo of the character at a fixed angle to form a cover image of the new pose. Then new data will be created and uploaded to the server, and a unique ID will be generated for storage; the client will save the solution to the user's portfolio UI.

[0306] 6. Storage and application;

[0307] Users can make secondary modifications to the saved modeling works, or name them for easy management; they can also click Apply on the Posture / Work interface, obtain the server storage data through the unique ID, and apply the posture data to the virtual character they control, so that the virtual character they control can strike the custom posture.

[0308] 7. Share and collect.

[0309] Users can forward the plan to others, who can see the preview cover image of the modeling work and the author's related information. Users can also click on the modeling works shared by others to collect them and save them in their own modeling collection; or directly click on the modeling work to apply it and use the modeling works shared by others for the virtual characters controlled by themselves.

[0310] The above-mentioned method embodiments can be combined in pairs or in multiple combinations according to the understanding of those skilled in the art to form more embodiments, which will not be elaborated in this application.

[0311] Fig. 22 A schematic diagram of the structure of a virtual character posture editing device provided by an exemplary embodiment of the present application is shown. The device comprises:

[0312] Display module 2220, used to display the model virtual character and at least one candidate skeleton point in the virtual environment;

[0313] A selection module 2240, configured to display an editing control for editing a target bone point in the at least one candidate bone point in response to a selection operation on the target bone point;

[0314] An editing module 2260, configured to change the position of the target bone point in the virtual environment in response to an editing operation on the editing control, and to link and change the position of at least one bone bound to the target bone point in the virtual environment;

[0315] In some embodiments, the editing control includes: a first drag control located on the target bone point, the first drag control having indicator lines of three coordinate axes displayed thereon;

[0316] The editing module 2260 is configured to change the position of the target bone point in the virtual environment along the first coordinate axis in response to a dragging operation of dragging the first drag control along the first coordinate axis; and based on the position of the target bone point in the virtual environment, to change the position of at least one bone bound to the target bone point in the virtual environment in a linked manner;

[0317] The first coordinate axis is one of the three coordinate axes.

[0318] In some embodiments, the editing control includes: second drag controls corresponding to three coordinate axes respectively, each of the second drag controls is used to implement control on one of the three coordinate axes;

[0319] The editing module 2260 is configured to, in response to a dragging operation of dragging the second drag control corresponding to the first coordinate axis, change the position of the target bone point in the virtual environment along the first coordinate axis; and based on the position of the target bone point in the virtual environment, linkingly change the position of at least one bone in the same bone chain as the target bone point in the virtual environment;

[0320] The first coordinate axis is one of the three coordinate axes.

[0321] In some embodiments, the editing module 2260 is used to change the position of the target bone point in the virtual environment along the positive half-axis of the first coordinate axis in response to a dragging operation of dragging the second drag control corresponding to the first coordinate axis toward the first direction; and / or, in response to a dragging operation of dragging the second drag control corresponding to the first coordinate axis toward the second direction, change the position of the target bone point in the virtual environment along the negative half-axis of the first coordinate axis.

[0322] In some embodiments, the editing module 2260 is used to use at least one bone on the same skeletal chain as the target skeletal point as at least one bone bound to the target skeletal point; based on the position of the target skeletal point in the virtual environment, inverse kinematics linkage is used to change the position of the at least one bone bound to the target skeletal point in the virtual environment.

[0323] In some embodiments, the second drag control includes a first form and a second form, the first form is a form in which only a joystick is displayed, and the second form is a form in which the joystick and a slide bar associated with the joystick are displayed;

[0324] The display module 2220 is further configured to switch the second drag control from the first form to the second form when the drag operation is detected.

[0325] In some embodiments, the display module 2220 is further configured to cancel the display of the second drag control corresponding to the second coordinate axis and the third coordinate axis when the drag operation is detected;

[0326] The second coordinate axis and the third coordinate axis are the other two coordinate axes among the three coordinate axes except the first coordinate axis.

[0327] In some embodiments, the model virtual character is displayed based on a skeleton model, and the skeleton model includes at least one skeleton chain;

[0328] In some embodiments, the editing module 2260 is used to stop changing the position of the target bone point in the virtual environment when the target bone point is dragged to a restricted position;

[0329] The restricted position includes at least one of a first restricted position and a second restricted position, wherein the first restricted position is set based on the physiological angle limit of the limbs of the model virtual character, and the second restricted position is set based on the editing freedom limit.

[0330] In some embodiments, the display module 2220 is also used to display at least one preset candidate posture option; the editing module 2260 is used to set the initial posture of the model virtual character in the virtual environment to a first posture corresponding to the first posture option in response to a selection operation of a first posture option among the at least one candidate posture option.

[0331] In some embodiments, the display module 2220 is also used to display the at least one generated posture option, which is a posture option corresponding to the modeling work obtained by user-defined editing; the editing module 2260 is used to respond to the selection operation of the second posture option in the at least one generated posture option, and set the initial posture of the model virtual character in the virtual environment to a second posture corresponding to the second posture option.

[0332] In some embodiments, the generating module 2280 is used to generate gesture data for applying the custom gesture to the virtual character controlled by at least one account based on the custom gesture presented by the model virtual character.

[0333] In some embodiments, the device is logged with a first account, and the device further comprises:

[0334] An application module 2292, configured to display the first virtual character in the custom character posture in response to the operation of applying the custom character posture to the first virtual character;

[0335] The first virtual character is a virtual character controlled by the first account.

[0336] In some embodiments, the device is logged with a first account, and the device further comprises:

[0337] The sharing module 2294 is used for displaying the sharing information of the modeling work corresponding to the custom gesture in the network space to which the second account has access rights in response to the operation of sharing the custom character gesture to the second account, so that the second account can apply the custom gesture on the second virtual character;

[0338] The second virtual character is a virtual character controlled by the second account.

[0339] In some embodiments, the device is logged with a first account, and the device further comprises:

[0340] The sharing module 2294 is used for displaying the sharing information of the modeling work corresponding to the custom gesture in the designated group in response to the operation of sharing the custom gesture to the designated group, so that a third account in the designated group can apply the custom gesture on a third virtual character;

[0341] The third virtual character is a virtual character controlled by the third account.

[0342] It should be noted that: the device provided in the above embodiment is only illustrated by the division of the above functional modules in the process of editing the posture of the virtual character. In actual application, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The specific implementation process is detailed in the method embodiment, which will not be repeated here.

[0343] Fig.23 A structural block diagram of a computer device 2300 provided by an exemplary embodiment of the present application is shown.

[0344] Typically, the computer device 2300 includes: a processor 2301 and a memory 2302 .

[0345] The processor 2301 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 2301 may be implemented in at least one hardware form of digital signal processing (DSP), field programmable gate array (FPGA), and programmable logic array (PLA). The processor 2301 may also include a main processor and a coprocessor. The main processor is a processor for processing data in an awake state, also known as a central processing unit (CPU); the coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 2301 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 2301 may also include an artificial intelligence (AI) processor, which is used to process computing operations related to machine learning.

[0346] The memory 2302 may include one or more computer-readable storage media, which may be non-transitory. The memory 2302 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 2302 is used to store at least one instruction, which is used to be executed by the processor 2301 to implement the gesture editing method provided in the method embodiment of the present application.

[0347] In some embodiments, the computer device 2300 may also optionally include: an input interface 2303 and an output interface 2304. The processor 2301, the memory 2302, and the input interface 2303 and the output interface 2304 may be connected via a bus or a signal line. Each peripheral device may be connected to the input interface 2303 and the output interface 2304 via a bus, a signal line or a circuit board. The input interface 2303 and the output interface 2304 may be used to connect at least one peripheral device related to input / output (I / O) to the processor 2301 and the memory 2302. In some embodiments, the processor 2301, the memory 2302, the input interface 2303, and the output interface 2304 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 2301, the memory 2302, the input interface 2303, and the output interface 2304 may be implemented on a separate chip or circuit board, which is not limited in the embodiments of the present application. Those skilled in the art will appreciate that the structure shown above does not constitute a limitation on the computer device 2300 , and may include more or fewer components than shown in the figure, or combine certain components, or adopt a different component arrangement.

[0348] In an exemplary embodiment, a computer device is also provided. The computer device includes: a processor and a memory. The memory stores a computer program. The computer program is loaded and executed by the processor to implement the virtual character posture editing method as described above.

[0349] In an exemplary embodiment, a chip is also provided, the chip including a programmable logic circuit and / or program instructions, and a computer device or terminal equipped with the chip is used to implement the virtual character posture editing method as described above.

[0350] In an exemplary embodiment, a computer-readable storage medium is also provided, wherein at least one program is stored in the storage medium, and when the at least one program is executed by a processor, it is used to implement the above-mentioned virtual character posture editing method. Optionally, the above-mentioned computer-readable storage medium can be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, etc.

[0351] In an exemplary embodiment, a computer program product is also provided, which includes a computer program, the computer program is stored in a computer-readable storage medium, a processor reads the computer program from the computer-readable storage medium, and the processor executes the computer program to implement the virtual character posture editing method as described above.

Claims

1. A method for editing the posture of a virtual character, characterized in that: The method comprises: Displaying a model virtual character and at least one candidate skeleton point in a virtual environment; In response to a selection operation on a target bone point among the at least one candidate bone point, displaying an edit control for editing the target bone point; In response to the editing operation on the editing control, the position of the target bone point in the virtual environment is changed, and the position of at least one bone bound to the target bone point in the virtual environment is also changed in conjunction.

2. The method according to claim 1, characterized in that The editing control comprises: a first drag control located on the target bone point, wherein the first drag control displays indicator lines of three coordinate axes; The step of changing the position of the target bone point in the virtual environment in response to the editing operation on the editing control, and linking the position of at least one bone bound to the target bone point in the virtual environment, comprises: In response to a dragging operation of dragging the first drag control along a first coordinate axis, changing a position of the target bone point in the virtual environment along the first coordinate axis; Based on the position of the target bone point in the virtual environment, the position of the at least one bone bound to the target bone point in the virtual environment is changed in a linked manner; The first coordinate axis is one of the three coordinate axes.

3. The method according to claim 1, characterized in that: The editing control comprises: second drag controls corresponding to the three coordinate axes respectively, each of the second drag controls being used to implement control on one of the three coordinate axes; The changing the position of the target bone point in the virtual environment, and the linked changing of the position of at least one bone bound to the target bone point in the virtual environment, include: In response to a dragging operation of dragging the second drag control corresponding to the first coordinate axis, changing the position of the target bone point in the virtual environment along the first coordinate axis; Based on the position of the target bone point in the virtual environment, the position of at least one bone in the same bone chain as the target bone point in the virtual environment is changed in a linked manner; The first coordinate axis is one of the three coordinate axes.

4. The method according to claim 3, characterized in that In response to the dragging operation of dragging the second drag control corresponding to the first coordinate axis, changing the position of the target bone point in the virtual environment along the first coordinate axis includes at least one of the following: In response to a dragging operation of dragging the second drag control corresponding to the first coordinate axis in a first direction, changing the position of the target bone point in the virtual environment along the positive half axis of the first coordinate axis; In response to a dragging operation of dragging the second drag control corresponding to the first coordinate axis toward a second direction, a position of the target bone point in the virtual environment is changed along a negative half axis of the first coordinate axis.

5. The method according to claim 3, characterized in that: The second drag control includes a first form and a second form, the first form is a form in which only the joystick is displayed, and the second form is a form in which the joystick and a slide bar associated with the joystick are displayed; The method further comprises: When the drag operation is detected, the second drag control is switched from the first form to the second form.

6. The method according to claim 3, characterized in that The method further comprises: In the case where the dragging operation is detected, the second dragging controls corresponding to the second coordinate axis and the third coordinate axis are cancelled; The second coordinate axis and the third coordinate axis are the other two coordinate axes among the three coordinate axes except the first coordinate axis.

7. The method according to claim 2 or 3, characterized in that: The model virtual character is displayed based on a skeleton model, and the skeleton model includes at least one skeleton chain; The step of changing the position of at least one bone bound to the target bone point in the virtual environment in a linked manner based on the position of the target bone point in the virtual environment comprises: At least one bone on the same bone chain as the target bone point is used as at least one bone bound to the target bone point; Based on the position of the target bone point in the virtual environment, the position of the at least one bone bound to the target bone point in the virtual environment is changed by inverse kinematics linkage.

8. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: When the target skeleton point is dragged to a restricted position, stop changing the position of the target skeleton point in the virtual environment; The restricted position includes at least one of a first restricted position and a second restricted position, wherein the first restricted position is set based on the physiological angle limit of the limbs of the model virtual character, and the second restricted position is set based on the editing freedom limit.

9. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: Displaying at least one preset candidate posture option; In response to a selection operation of a first posture option among the at least one candidate posture option, an initial posture of the model virtual character in the virtual environment is set to a first posture corresponding to the first posture option.

10. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: Displaying the at least one generated posture option, wherein the at least one generated posture option is a posture option corresponding to the modeling work obtained by user-defined editing; In response to a selection operation of a second posture option among the at least one generated posture option, an initial posture of the model virtual character in the virtual environment is set to a second posture corresponding to the second posture option.

11. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: Based on the custom gesture presented by the model virtual character, gesture data for applying the custom gesture on the virtual character controlled by at least one account is generated.

12. The method according to any one of claims 1 to 6, characterized in that: The method is executed by a client that logs in to the first account, and the method further includes: In response to applying the custom character posture to a first virtual character, displaying the first virtual character in the custom character posture; The first virtual character is a virtual character controlled by the first account.

13. The method according to any one of claims 1 to 6, characterized in that: The method is executed by a client that logs in to the first account, and the method further includes: In response to the operation of sharing the custom character posture to the second account, displaying the sharing information of the custom posture in a network space to which the second account has access rights, so that the second account can apply the custom posture on the second virtual character; The second virtual character is a virtual character controlled by the second account.

14. The method according to any one of claims 1 to 6, characterized in that: The method is executed by a client that logs in to the first account, and the method further includes: In response to an operation of sharing the custom gesture to a designated group, displaying sharing information of the custom gesture in the designated group so that a third account in the designated group can apply the custom gesture on a third virtual character; The third virtual character is a virtual character controlled by the third account.

15. A virtual character posture editing device, characterized in that: The device comprises: A display module, used for displaying a model virtual character and at least one candidate skeleton point in a virtual environment; A selection module, configured to display an editing control for editing a target bone point in the at least one candidate bone point in response to a selection operation on the target bone point; An editing module, configured to change the position of the target bone point in the virtual environment in response to an editing operation on the editing control, and to link and change the position of at least one bone bound to the target bone point in the virtual environment; A generation module is used to generate a modeling work for applying the custom posture on the virtual character controlled by at least one account based on the custom posture presented by the model virtual character.

16. A computer device, characterized in that: The computer device comprises: a processor and a memory, wherein the memory stores a computer program, and the computer program is loaded and executed by the processor to implement the virtual character posture editing method according to any one of claims 1 to 14.

17. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is loaded and executed by a processor to implement the virtual character posture editing method according to any one of claims 1 to 14.

18. A computer program product, characterized in that The computer program product stores a computer program, and the computer program is loaded and executed by a processor to implement the virtual character posture editing method according to any one of claims 1 to 14.