Virtual action editing method and device, program product and electronic equipment
Patent Information
- Application Number
- CN202411275047.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-11
- Publication Date
- 2025-01-03
AI Technical Summary
In the existing game UGC editor, users can only use limited actions when editing virtual characters, making it difficult to achieve diversified action effects.
By displaying an action editing interface based on the target bone group in the graphical user interface, users can determine the keyframes and hook objects of the virtual bones, generate action data, and control the virtual character model to perform actions under specific conditions to achieve diversified actions Effect.
It provides user-defined editing virtual actions, simple editing operations, low user learning costs, popular promotion, and achieves diversified action effects.
Smart Images

Figure CN119236408A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer and game technology, and in particular to a virtual action editing method, a virtual action editing device, a computer program product and an electronic device. Background Art
[0002] In related game UGC (User Generated Content) editors, when editing a virtual character, users can usually only use the actions provided in the game program to set the actions of the virtual character. However, the number of actions in the game program is relatively limited, making it difficult to edit a variety of action effects for the virtual character. Summary of the invention
[0003] The present disclosure provides a virtual action editing method, a virtual action editing device, a computer program product and an electronic device, so as to at least to some extent solve the problem that it is difficult to edit various action effects for a virtual character.
[0004] According to a first aspect of the present disclosure, a virtual action editing method is provided, the method comprising: displaying an action editing interface based on a target bone group in a graphical user interface; the target bone group comprises a plurality of virtual bones; in response to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone; in response to a second editing instruction for the target bone group, determining a mounting object of the target bone group; wherein the target bone group has one or more mounting points, the mounting points comprising mounting points determined according to basic information of the target bone group and / or custom mounting points; at least part of the mounting objects of the target bone group have a relative transformation relationship with the corresponding mounting points; generating action data of a target action according to the key frame and the mounting object; in response to a triggering action execution condition, controlling a first virtual character model configured with the target action to execute the target action according to the action data, and presenting the mounting object at the effective time of the mounting object; the first virtual character model is a virtual model based on the target bone group.
[0005] According to a second aspect of the present disclosure, a virtual action editing device is provided, the device comprising: an interface display processing module, configured to display an action editing interface based on a target bone group in a graphical user interface; the target bone group comprises a plurality of virtual bones; a first editing processing module, configured to determine a key frame of a first virtual bone in the target bone group in response to a first editing instruction for the first virtual bone in the target bone group; a second editing processing module, configured to determine a mounting object of the target bone group in response to a second editing instruction for the target bone group; wherein the target bone group has one or more mounting points, the mounting points comprising mounting points determined according to basic information of the target bone group and / or custom mounting points; at least part of the mounting objects of the target bone group have a relative transformation relationship with the corresponding mounting points; an action data generating module, configured to generate action data of a target action according to the key frame and the mounting object; an action execution processing module, configured to control a first virtual character model configured with the target action to execute the target action according to the action data in response to a triggering action execution condition, and to present the mounting object at the effective time of the mounting object; the first virtual character model is a virtual model based on the target bone group.
[0006] According to a third aspect of the present disclosure, a computer program product is provided, including a computer program, wherein when the computer program is executed by a processor, the method of the first aspect and possible implementations thereof are implemented.
[0007] According to a fourth aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the method of the above-mentioned first aspect and its possible implementation methods by executing the executable instructions.
[0008] The technical solution disclosed in this disclosure has the following beneficial effects:
[0009] In the action editing interface based on the target bone group, the user can determine the key frame of the first virtual bone through the first editing instruction, and determine the attachment object of the target bone group through the second editing instruction, thereby generating the action data of the target action. The target action can be applied to the first virtual character model based on the target bone group, so that when it is configured with the target action, it responds to the triggering action execution condition and executes the target action. On the one hand, a user-defined function of editing virtual actions is provided. In the process of editing virtual actions, the key frame of the virtual bone can be edited, and the object can be attached to the target bone group. By combining the key frame with the attachment object, a variety of action effects can be achieved. On the other hand, the editing operation process is relatively simple, the user learning cost is low, and it is conducive to popularization. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 A system architecture diagram in this exemplary embodiment is shown;
[0011] Figure 2 A flowchart showing a virtual action editing method in this exemplary embodiment;
[0012] Figure 3 A schematic diagram showing a game editing scene in this exemplary embodiment;
[0013] Figure 4A A schematic diagram showing an action editing interface and a skeleton action track in this exemplary embodiment;
[0014] Figure 4B A schematic diagram showing a skeleton parameter interface in this exemplary embodiment;
[0015] Figure 4C A schematic diagram showing a full-screen preview in this exemplary embodiment;
[0016] Figure 4D A schematic diagram showing a rotating virtual skeleton in this exemplary embodiment;
[0017] Figure 5A A schematic diagram showing an action editing interface and a mounting track in this exemplary embodiment;
[0018] Figure 5B A schematic diagram showing another action editing interface in this exemplary embodiment;
[0019] Figure 5C A schematic diagram showing a hook type selection interface in this exemplary embodiment;
[0020] Figure 5D A schematic diagram showing a mounting object setting interface in this exemplary embodiment;
[0021] Figure 5E A schematic diagram showing another mounting object setting interface in this exemplary embodiment;
[0022] Figure 6 A schematic diagram showing another game editing scenario in this exemplary embodiment;
[0023] Figure 7 A schematic diagram showing the structure of a virtual action editing device in this exemplary embodiment is shown;
[0024] Figure 8 A schematic structural diagram of an electronic device in this exemplary embodiment is shown. DETAILED DESCRIPTION
[0025] Exemplary embodiments of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings.
[0026] The accompanying drawings are schematic diagrams of the present disclosure and are not necessarily drawn to scale. Some of the block diagrams shown in the accompanying drawings may be functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or in hardware modules or integrated circuits, or in networks, processors or microcontrollers. The embodiments can be implemented in various forms and should not be construed as being limited to the examples set forth herein. The features, structures or characteristics described in the present disclosure may be combined in one or more embodiments in any suitable manner. In the description below, many specific details are provided to provide a full description of the embodiments of the present disclosure. However, those skilled in the art should appreciate that one or more specific details may be omitted when implementing the technical solution of the present disclosure, or one or more specific details may be replaced by other methods, components, devices, steps, etc.
[0027] The game UGC editor enables users to edit virtual characters. For example, users can create NPCs (Non Player Characters) in the game scene and use the actions provided in the game program to set the NPC's actions so that the NPC can make corresponding actions during the game to achieve game interaction effects. The actions provided in the game program are some common actions pre-written by game developers, such as greeting, jumping, walking, etc. The number of these actions is usually limited. Therefore, the action effects edited by users using these actions are relatively simple and cannot achieve diversified action effects.
[0028] In view of one or more of the above problems, an exemplary embodiment of the present disclosure provides a virtual action editing method.
[0029] Figure 1The system architecture diagram of the operating environment of this exemplary embodiment is shown. The system architecture may include a terminal device 110 and a server 120. Among them, the terminal device 110 may be a mobile phone, a tablet computer, a personal computer, an intelligent wearable device, a game console, etc., which has a display function and can display a graphical user interface. The graphical user interface may include an interface of an operating system or an interface of an application program, etc. A game program is installed on the terminal device 110, such as a client program of an online game. When the terminal device 110 runs the game program, an action editing interface, etc. may be displayed in the graphical user interface. The server 120 generally refers to a background system that provides game services in this exemplary embodiment, which may be a server or a cluster of multiple servers. A game server program is deployed on the server 120 for executing game data processing on the server side. The terminal device 110 and the server 120 may be connected via a wired or wireless communication link to perform data transmission. The method in this exemplary embodiment may be executed by any one or more of the terminal device 110 and the server 120.
[0030] In one embodiment, the virtual action editing method can be implemented and executed based on a cloud interactive system. The cloud interactive system can be the above-mentioned system architecture. Various cloud applications can be run under the cloud interactive system, such as cloud games. Taking cloud games as an example, cloud games refer to a game method based on cloud computing. In the operation mode of cloud games, the operation subject of the game program and the game screen presentation subject are separated, and the storage and operation of the control and interaction methods in the game are completed on the cloud game server (such as the above-mentioned server 120), and the cloud game client (such as the above-mentioned terminal device 110) is used for receiving and sending data and presenting the game screen. For example, the cloud game client can be a display device with data transmission function close to the user side, such as a mobile terminal, a TV, a computer, a handheld computer, etc.; and the cloud game server in the cloud performs information processing. When playing games or editing games, the user operates the cloud game client to send operation instructions to the cloud game server. The cloud game server runs the game according to the operation instructions, encodes and compresses the game screen and other data, and returns it to the cloud game client through the network. Finally, the cloud game client decodes and outputs the game screen.
[0031] In one embodiment, the game map (or scene) edited by the terminal device 110 can be uploaded to the server 120 for storage. For example, the currently edited game map can be automatically saved at regular intervals during the editing process, or the currently edited game map can be saved according to a manual save operation performed by the user, or the currently edited game map can be automatically saved when exiting the editing. When saving the game map, the terminal device 110 can upload the game map data to the server 120, and the server 120 can save it.
[0032] In one embodiment, the server 120 may maintain a game map pool, such as deploying a database for storing game maps on the server side. In response to an instruction to publish a game map on the terminal device 110, the server 120 may add the game map data to the game map pool, so that other players can download the game map data from the game map pool and use the game map to play the game. This enables a fast UGC function.
[0033] In one embodiment, the virtual action editing method can be implemented in a stand-alone game. No server needs to be deployed, and the terminal device 110 can install all game programs and execute the virtual action editing method.
[0034] Figure 2 An exemplary process of a virtual action editing method is shown, which may include the following steps:
[0035] Step S210, displaying an action editing interface based on a target skeleton group in a graphical user interface; the target skeleton group includes a plurality of virtual skeletons;
[0036] Step S220, in response to a first editing instruction for a first virtual skeleton in the target skeleton group, determining a key frame of the first virtual skeleton;
[0037] Step S230, in response to the second editing instruction for the target bone group, determining the attachment objects of the target bone group; wherein the target bone group has one or more attachment points, and the attachment points include attachment points determined according to the basic information of the target bone group and / or customized attachment points; at least part of the attachment objects of the target bone group have a relative transformation relationship with the corresponding attachment points;
[0038] Step S240, generating motion data of the target motion according to the key frame and the attachment object;
[0039] Step S250, responding to the triggering action execution condition, controlling the first virtual character model configured with the target action to execute the target action according to the action data, and presenting the attachment object at the effective time of the attachment object; the first virtual character model is a virtual model based on the target skeleton group.
[0040] based on Figure 2According to the method, in an action editing interface based on a target skeleton group, a user can determine the key frame of a first virtual skeleton through a first editing instruction, and determine the attachment object of the target skeleton group through a second editing instruction, thereby generating action data of a target action. The target action can be applied to a first virtual character model based on the target skeleton group, so that when the target action is configured, it responds to the triggering action execution condition and executes the target action. On the one hand, a function of user-defined editing of virtual actions is provided. In the process of editing virtual actions, the key frame of the virtual skeleton can be edited, and the object can also be attached to the target skeleton group. By combining the key frame with the attachment object, a variety of action effects can be achieved. On the other hand, the editing operation process is relatively simple, the user learning cost is low, and it is conducive to popularization.
[0041] Below Figure 2 Provide detailed instructions for each step.
[0042] refer to Figure 2 In step S210, an action editing interface based on a target skeleton group is displayed in a graphical user interface; the target skeleton group includes a plurality of virtual skeletons.
[0043] In the game program, a user-oriented editing function may be provided. For example, the editing function may be implemented in the main game program. When the main game program is running, the user may select an option related to the editing function to enter an editor or editing interface and use the editing function. Alternatively, the editing function may be implemented through an editing program that is compatible with the main game program. The editing program may run independently outside the main game program. When the editing program is running, the user may use the editing function.
[0044] From the above, it can be seen that the game program running process can include at least two stages: the game editing stage, that is, the stage in which the user uses the editing function to edit virtual actions or other game information; the game running stage, that is, the stage in which the user plays the game. The game information edited by the user will actually take effect in the game running stage, such as the virtual characters in the game can perform virtual actions edited by the user.
[0045] The action editing interface is an interface for editing virtual actions, which may include controls required for action editing and may also display relevant editing information of the virtual actions.
[0046] In one embodiment, the above-mentioned display of the action editing interface based on the target skeleton group in the graphical user interface may include: displaying a game editing scene in the graphical user interface; responding to the action editing trigger instruction in the game editing scene, controlling the game editing scene displayed in the graphical user interface to be switched to the action editing interface. Among them, the game scene refers to the virtual space in the game, including but not limited to game maps, levels, copies, towns, homes and other scenes. The game editing scene is a game scene loaded in the game editing stage. For example, a user can select a game scene for editing in the interface of the game editing function, triggering to enter the game scene in an editing state, and the game scene thus presented is called a game editing scene. The game scene edited by the user can be a game scene that comes with the game program, or a game scene that the user has edited, or a game scene that other users have edited, or a newly created game scene. In the game running stage, the game scene can be loaded in a running state, and the game scene thus presented is called a game running scene. The game editing scene and the game running scene can be different states of the same game scene, and the two have a corresponding relationship. Figure 3 A schematic diagram of a game editing scene is shown, which includes scene components such as tables, blocks, egg-shaped creatures, and other components.
[0047] The action editing trigger instruction is an instruction to start the action editing function. Exemplarily, the game editing scene provides an entry for the action editing function, and the user opens the action editing function in the game editing scene by clicking on the entry, etc., to trigger entering the action editing interface from the game editing scene.
[0048] In one embodiment, the user can enter the action editing interface by turning on the action editing function without entering the game editing scene. For example, the editor interface of the main game program provides different editing functions such as scene editing and action editing. The user selects action editing to trigger entering the action editing interface.
[0049] In one embodiment, the above-mentioned action editing interface can be an editing interface in a first action editing mode. The first action editing mode refers to a mode for editing virtual actions based on a skeleton group and a virtual skeleton. In addition, other action editing modes can also be provided in the game program. For example, a second action editing mode can be provided, which is an editing mode for forming virtual actions by combining or splicing preset actions in the game program. A third action editing mode can also be provided, which is an editing mode that allows and generates corresponding virtual actions by identifying character actions in pictures or videos imported by users.
[0050] A skeleton group refers to a combination of multiple virtual skeletons connected in a certain way. A skeleton group can be regarded as the skeleton of a virtual character, representing the basic body structure of the virtual character. One or more skeleton groups can be edited by a developer and provided to the user in the game program. The user can use the skeleton group as a reference to create a virtual character or edit virtual actions. In one embodiment, a user can be allowed to customize the creation of a skeleton group.
[0051] For example, the skeleton group may include a humanoid skeleton group, a quadruped skeleton group, an egg-shaped skeleton group, etc. Under the humanoid skeleton group, different resources such as skin maps may be combined to form different humanoid virtual characters. Under the quadruped skeleton group or the egg-shaped skeleton group, resources such as skin maps may also be combined to form virtual characters of corresponding categories.
[0052] As can be seen from the above, different skeleton groups differ in one or more aspects such as the type, quantity, and connection method of virtual skeletons. Therefore, some virtual actions may not be universal on different skeleton groups. For example, the virtual actions of the humanoid skeleton group are actions that can be performed by the humanoid body structure, which are usually not applicable to the quadrupedal skeleton group. For example, there are significant differences between the jumping actions of humanoid creatures and quadrupedal creatures, so the jumping action data of the humanoid skeleton group cannot be applied to the quadrupedal skeleton group.
[0053] In this exemplary embodiment, when editing a virtual action, the user can select to use a certain skeleton group as a benchmark, and the target skeleton group refers to the skeleton group selected by the user. The content displayed by the action editing interface of different skeleton groups is different. For example, the virtual skeletons for editing virtual actions displayed by the action editing interface of different skeleton groups are different, the controls provided are different, the virtual skeleton models displayed are different, or the like. Therefore, when determining the target skeleton group, the action editing interface based on the target skeleton group is displayed, so that the user can use the target skeleton group rather than other skeleton groups as a benchmark to edit virtual actions.
[0054] In one embodiment, when the user turns on the action editing function, the target skeleton group can be selected from the skeleton group, and the action editing interface based on the target skeleton group is triggered and displayed. Or, after the user turns on the action editing function, a general action editing interface is entered, and the user can select the target skeleton group subsequently, triggering the relevant content of the target skeleton group to be displayed in the action editing interface, and the action editing interface at this time is the action editing interface based on the target skeleton group. Or, the user can choose to edit the created virtual action (which can be a virtual action preset in the game program, or a virtual action previously created by the user, or a virtual action created by other users), and then the skeleton group corresponding to the virtual action is the target skeleton group, and the action editing interface based on the target skeleton group is displayed, and the existing data or information (such as existing key frame information) of the virtual action can also be displayed.
[0055] In one embodiment, the above-mentioned action editing trigger instruction may include an instruction to select a target bone group from multiple candidate bone groups. For example, the user selects the function option of editing the virtual action, triggering the display of a bone group selection interface, including options corresponding to multiple candidate bone groups, and the user can select one of them and confirm, thereby determining the target bone group, and triggering the display of an action editing interface based on the target bone group.
[0056] The target skeleton group includes multiple virtual skeletons. Taking the egg-shaped skeleton group as an example, it may include the root skeleton, head skeleton, chest skeleton, waist skeleton, left upper arm skeleton, left lower arm skeleton, left hand skeleton, right upper arm skeleton, right lower arm skeleton, right hand skeleton, left thigh skeleton, left calf skeleton, left foot skeleton, right thigh skeleton, right calf skeleton, right foot skeleton, etc. Users can edit these virtual skeletons to form specific actions.
[0057] Continue to refer Figure 2 In step S220, in response to a first editing instruction for a first virtual bone in the target bone group, a key frame of the first virtual bone is determined.
[0058] The first virtual skeleton can be any one or more virtual skeletons in the target skeleton group. The first editing instruction refers to an editing instruction for the first virtual skeleton. In the present exemplary embodiment, the target action to be edited by the user can be a static action (including only one frame) or a dynamic action (including multiple frames). The key frame of the first virtual skeleton refers to one or more frames in which the first virtual skeleton has specified skeleton parameters during the execution of the target action. For example, the target action includes 30 frames, and the user edits the skeleton parameters of the first virtual skeleton in the 1st frame, the 10th frame, and the 30th frame. Then the first virtual skeleton has 3 key frames, and has specified skeleton parameters in these 3 key frames. The game program can perform algorithm processing such as interpolation according to the skeleton parameters of the key frames to obtain the skeleton parameters of other frames. The key frame can include information such as the time (or frame sequence) of the key frame and skeleton parameters.
[0059] The following is a detailed description of how to edit virtual bones.
[0060] In one embodiment, the above-mentioned response to the first editing instruction for the first virtual bone in the target bone group and determining the key frame of the first virtual bone may include the following steps:
[0061] In response to the key frame adding instruction for the first virtual skeleton, a new key frame is added for the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton.
[0062] Wherein, the first editing instruction may include a keyframe adding instruction for adding a new keyframe to the first virtual skeleton. In this exemplary embodiment, the skeleton parameters of the virtual skeleton may include transformation parameters, specifically including one or more of the displacement, rotation, scaling, flipping and other parameters of the virtual skeleton. The transformation parameters of the virtual skeleton may be absolute transformation parameters or relative transformation parameters. In one embodiment, the target skeleton group has a root skeleton and a non-root skeleton, the root skeleton is the root node of the entire target skeleton group, a part of the non-root skeleton is connected to the parent skeleton with the root skeleton as the parent skeleton, and the remaining non-root skeleton is connected to the respective parent skeleton in this way, which is similar to a tree-shaped connection structure as a whole. The transformation parameters of the root skeleton are absolute transformation parameters, which represent the displacement, rotation, scaling and the like of the entire target skeleton group, and the transformation parameters of the non-root skeleton are relative transformation parameters relative to its parent skeleton. In addition, the skeleton parameters of the virtual skeleton may also include other parameters other than the transformation parameters, such as motion parameters, which may represent whether the motion type of the virtual skeleton is linear motion or curvilinear motion and the like.
[0063] In the action editing interface, the user can edit the bone parameters of the first virtual skeleton. Exemplarily, a bone parameter interface of the first virtual skeleton can be provided, such as a sub-interface in the action editing interface, and the user can edit the bone parameters of the first virtual skeleton in the interface. Alternatively, a virtual bone model of a target bone group is provided, which is a visual model of the target bone group, including each virtual bone in the target bone group, and the user can move, rotate, scale, etc. the first virtual bone in the virtual bone model to edit its bone parameters. In one embodiment, when the bone parameters of the first virtual skeleton are not edited, the bone parameters can be default values, such as a default displacement of 0, a rotation of 0, a scaling of 1, etc.
[0064] In response to the keyframe adding instruction for the first virtual skeleton, a new keyframe is added for the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton when the keyframe adding instruction is generated. In this way, there is no need to specifically set skeleton parameters for each keyframe, thereby realizing fast keyframe addition.
[0065] In one embodiment, the above-mentioned response to the key frame adding instruction for the first virtual skeleton, adding a new key frame for the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton, includes at least one of the following methods:
[0066] ① Provide a keyframe adding control. When the first virtual skeleton is the currently edited virtual skeleton, respond to the triggering instruction of the keyframe adding control, and add a new keyframe to the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton. Among them, the currently edited virtual skeleton refers to the virtual skeleton currently selected for editing. In the case of displaying the virtual skeleton model of the target skeleton group, the user can select the first virtual skeleton in the virtual skeleton model by clicking, long pressing, box selection, etc., to use it as the currently edited virtual skeleton. Alternatively, provide one or more virtual skeleton skeleton action tracks, which are controls for editing the keyframes of the virtual skeleton. The user selects the skeleton action track of the first virtual skeleton by clicking, long pressing, box selection, etc., which is equivalent to selecting the first virtual skeleton and using it as the currently edited virtual skeleton. The keyframe adding control can be a control provided in the action editing interface or its sub-interface. The triggering instruction for adding the keyframe control is the keyframe adding instruction. For example, the operation instruction of the user clicking or long pressing the keyframe adding control can trigger the addition of a new keyframe to the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton.
[0067] Figure 4A A schematic diagram of an action editing interface is shown, in which a key frame adding control 4082 is provided. If the user currently selects bone 2 (i.e., the first virtual bone) as the currently edited virtual bone, clicking the key frame adding control 4082 can trigger adding a new key frame of bone 2 with the current bone parameters of bone 2.
[0068] ② When the automatic keyframe insertion function is turned on, respond to the bone parameter adjustment instruction for the first virtual bone, and add a new keyframe for the first virtual bone according to the adjusted bone parameters. The automatic keyframe insertion function means that when the bone parameters are adjusted, a keyframe adding instruction is automatically generated without the user manually triggering the keyframe adding instruction (such as without clicking the keyframe adding control).
[0069] refer to Figure 4A As shown, an automatic keyframe insert control 409 is provided in the action editing interface, and setting the automatic keyframe insert control 409 to "on" indicates turning on the automatic keyframe insert function. When the automatic keyframe insert function is turned on, if the user adjusts the bone parameters of bone 2, it triggers adding a new keyframe for bone 2 according to the adjusted bone parameters.
[0070] In one embodiment, when the automatic keyframe insertion function is turned off, in response to the bone parameter adjustment instruction for the first virtual skeleton, a new keyframe will not be automatically added to the first virtual skeleton. The user is required to trigger the keyframe adding instruction through the keyframe adding control, respond to the keyframe adding instruction, and add a new keyframe to the first virtual skeleton, which is the above-mentioned method ①.
[0071] In one embodiment, the bone parameter adjustment instruction may include at least one of the following methods:
[0072] ③ Provide a bone parameter interface for the first virtual skeleton, and generate a bone parameter adjustment instruction according to the editing operation in the bone parameter interface. Exemplarily, when the first virtual skeleton is the currently edited virtual skeleton, the bone parameter interface of the first virtual skeleton can be displayed. Alternatively, when the first virtual skeleton is the currently edited virtual skeleton, in response to the set trigger instruction, the bone parameter interface of the first virtual skeleton is displayed. Alternatively, when the first virtual skeleton is the currently edited virtual skeleton, and the key frame of the first virtual skeleton is the currently edited key frame, in response to the set trigger instruction, the bone parameter interface of the first virtual skeleton at the key frame is displayed. Among them, the currently edited key frame refers to the key frame selected from the existing key frames of the currently edited virtual skeleton, that is, the key frame currently being edited. Setting the trigger instruction is an instruction for the user to start adjusting the bone parameters. Reference Figure 4A As shown in FIG. 4 , when bone 2 is selected as the currently edited virtual bone, if the user clicks the bone parameter setting control 4085, the bone parameter interface of bone 2 is triggered. Figure 4B As shown, the user can set the offset position, relative rotation, relative scaling and other bone parameters in this interface, thereby generating bone parameter adjustment instructions.
[0073] ④ Display the virtual skeleton model of the target skeleton group, and generate skeleton parameter adjustment instructions according to the editing operation of the first virtual skeleton in the virtual skeleton model. Figure 4A The virtual skeleton model of the target skeleton group is shown, including virtual skeletons 4031, 4032, 4033, 4034, 4035, and 4036, wherein skeleton 2 is virtual skeleton 4032. The user can perform editing operations such as moving, rotating, and scaling virtual skeleton 4032, thereby generating skeleton parameter adjustment instructions.
[0074] ⑤ Display the second virtual character model, which is a virtual character model based on the target skeleton group. The second virtual character model includes virtual body parts corresponding to each virtual skeleton of the target skeleton group, wherein the first virtual body part corresponds to the first virtual skeleton; generate skeleton parameter adjustment instructions according to the editing operation of the first virtual body part in the second virtual character model. Figure 4AThe second virtual character model 402 is shown, which is a virtual character model based on the egg-shaped skeleton group. The second virtual character model 402 includes virtual body parts such as a head and a chest, and each virtual body part corresponds to a virtual skeleton, such as the chest of the second virtual character model 402 corresponds to a virtual skeleton 4032. The user can perform editing operations such as moving, rotating, and scaling the chest of the second virtual character model 402, which is equivalent to editing the virtual skeleton 4032, thereby generating a skeleton parameter adjustment instruction.
[0075] In one embodiment, the above-mentioned response to the first editing instruction for the first virtual bone in the target bone group and determining the key frame of the first virtual bone may include the following steps:
[0076] In the case where at least one existing key frame of the first virtual skeleton is used as the current editing key frame, in response to a bone parameter adjustment instruction for the first virtual skeleton, the current editing key frame is updated according to the adjusted bone parameters.
[0077] Figure 4A The action editing interface includes the skeleton action tracks of skeleton 1, skeleton 2, skeleton 3, and skeleton 4. Key frames are shown on the skeleton action tracks. For example, skeleton 2 currently has two key frames, and these two key frames are shown on its skeleton action track. The user can click to select a key frame as the current editing key frame. In the case where at least one key frame of the first virtual skeleton is the current editing key frame, in response to the skeleton parameter adjustment instruction for the first virtual skeleton, the original skeleton parameters of the current editing key frame can be replaced with the adjusted skeleton parameters to achieve fast editing of the key frame.
[0078] In one embodiment, when adjusting the skeleton parameters of the first virtual skeleton, the virtual action editing method further includes at least one of the following steps:
[0079] If the first virtual bone is the root bone in the target bone group, the position of the first virtual bone is allowed to be adjusted; the non-root bones in the target bone group have a bound transformation relationship with their parent bones, and the root bones do not have parent bones. Among them, the position of the root bone of the target bone group is an absolute position, which can be adjusted, which is equivalent to adjusting the position of the entire target bone group. For example, the position coordinates of the root bone of the target bone group were originally (0,0,0), and adjusting it to (1,0,0) means moving the target bone group along the X-axis by 1 unit length.
[0080] If the first virtual skeleton is a non-root skeleton and supports inverse kinematics, the position of the first virtual skeleton is allowed to be adjusted. The position of the non-root skeleton is the relative position of the non-root skeleton with respect to its parent skeleton. Inverse kinematics (IK) refers to the action mode in which the child skeleton drives the movement of its parent skeleton. For non-root skeletons that support inverse kinematics, their movement in the target action can be initiated by themselves or driven by their child skeletons, in addition to being driven by their parent skeletons (i.e. the action mode of forward kinematics). Therefore, the position of non-root skeletons that support inverse kinematics can be adjusted.
[0081] If the first virtual bone is a non-root bone and does not support inverse kinematics, the position of the first virtual bone is not allowed to be adjusted. Among them, for non-root bones that do not support inverse kinematics, their movement in the target action is driven by their parent bones, and they usually have no position offset relative to the parent bones. Therefore, the position of non-root bones that do not support inverse kinematics is not allowed to be adjusted.
[0082] In one embodiment, the virtual action editing method further includes the following steps:
[0083] If the first virtual bone is a non-root bone and supports inverse kinematics, in response to adjusting the position of the first virtual bone, the position of the parent bone of the first virtual bone is adjusted according to the position adjustment information of the first virtual bone.
[0084] Among them, if the first virtual skeleton is a non-root skeleton that supports inverse kinematics, adjusting the position of the first virtual skeleton can drive the adjustment of the position of its parent skeleton. The position adjustment information of the first virtual skeleton may include the position adjustment amount or the adjusted position coordinates, etc. The relevant algorithms of inverse kinematics can be set in the game program, which may include a calculation formula for calculating the position of the parent skeleton based on the position adjustment information of the child skeleton, etc. When calculating, factors such as the body part where the first virtual skeleton and the parent skeleton are located, the connection position and size of the first virtual skeleton and the parent skeleton may also be considered. The present disclosure does not limit the specific calculation method.
[0085] In one embodiment, if the first virtual bone is a non-root bone and supports inverse kinematics, in response to adjusting the angle of the first virtual bone (i.e., rotation parameter), the angle of the parent bone of the first virtual bone is adjusted according to the angle adjustment information of the first virtual bone. That is, when the first virtual bone rotates, its parent bone can be driven to rotate by a corresponding angle.
[0086] In one embodiment, the above-mentioned response to the first editing instruction for the first virtual bone in the target bone group and determining the key frame of the first virtual bone may include the following steps:
[0087] Providing a skeleton action track of the first virtual skeleton, where the skeleton action track is used to edit key frames of the first virtual skeleton on the first timeline;
[0088] In response to an edit instruction for the skeletal motion track of the first virtual skeleton, a key frame of the first virtual skeleton is determined.
[0089] In the present exemplary embodiment, track is a control with a timeline. Each track corresponds to one or more editable objects (such as virtual skeletons, attachment objects, etc.) in the target action. The user can set one or more time points or time periods (such as key frames, effective time, etc.) on the track, edit the parameters of the editable objects at various time points and time periods, so that the editable objects produce dynamic effects over time. Depending on the type of editable objects, the track can include but is not limited to types such as skeleton action tracks and attachment tracks. The target action finally presented is the effect of fusing each editable object. Of course, in addition to the track, other forms of controls can also be used to realize the timeline, and then realize the effect of dynamic editing.
[0090] The Skeleton Action Track is a control for editing the keyframes of the virtual skeleton on the first timeline. The first timeline is the timeline in the Skeleton Action Track, which represents the editable time range of the virtual skeleton. In one embodiment, the first timeline can use conventional time units such as minutes and seconds as time units, or can use the number of frames as time units (when the frame rate is determined, the number of frames can be equivalent to the duration). For example, Figure 4A It shows that the total number of frames of the target action is 150 frames. At this time, the target action uses the number of frames as the time unit. The first time axis is the time axis in the bone action track of bone 1, bone 2, bone 3, and bone 4, which can also use the number of frames as the time unit. The user can also switch the total duration of the target action to regular time units such as minutes and seconds, and the first time axis will also switch to regular time units.
[0091] The user can set the start point, end point, and duration of the first timeline. In one embodiment, the first timeline can be the total timeline of the target action by default. Figure 4AAs shown, the total duration of the target action is 150 frames, then the initial first timeline is 150 frames long, the starting point is the starting frame of the target action, and the end point is the end frame of the target action. Afterwards, the user can adjust the starting or end position of the first timeline, and can also change the duration of the first timeline. For example, the user can set the starting point of the first timeline to the 5th frame, the end point to the 140th frame, and edit the key frame and other information of the virtual skeleton in the 5th to 140th frame time period, then the virtual skeleton can move according to the skeleton parameters of the key frame in the 5th to 140th frame time period. In the 1st to 4th frame and the 141st to 150th frame time period, the virtual skeleton can be set to static, or the skeleton parameters of the virtual skeleton can be set to the default value (such as displacement parameters are 0, rotation parameters are 0, scaling parameters are 1, etc.), or the virtual skeleton can be hidden. For another example, the user can keep the starting point of the first timeline as frame 1, set the end point to frame 160 (i.e., beyond the range of 150 frames), and edit the key frames and other information of the virtual skeleton in the time period from frame 1 to frame 160, where the time period from frame 151 to frame 160 exceeds the total duration of the target action. If the total duration of the target action is subsequently set to 160 frames or more, the key frames and other information of the virtual skeleton in the time period from frame 151 to frame 160 will take effect within the target action.
[0092] In one implementation, for each virtual bone in the target bone group, a corresponding bone motion track may be provided and displayed, including the bone motion track of the first virtual bone.
[0093] In one embodiment, the above-mentioned provision of the skeletal motion track of the first virtual skeleton may include: if the first virtual skeleton is the root skeleton in the target skeleton group, when entering the action editing interface, the skeletal motion track of the first virtual skeleton is displayed. Wherein, the skeletal motion track of the root skeleton can be displayed when entering the action editing interface based on the target skeleton group, including but not limited to the following situations: when starting to edit the virtual action, confirm to start editing after selecting the target skeleton group to trigger the display of the action editing interface based on the target skeleton group, and the skeletal motion track of the root skeleton is displayed in the interface at this time. Start editing the virtual action and enter the general action editing interface, after selecting the target skeleton group, trigger the entry of the action editing interface based on the target skeleton group from the general action editing interface, and the skeletal motion track of the root skeleton is displayed at this time. Start editing the virtual action and enter the general action editing interface, after selecting the target skeleton group, trigger the display of the relevant information of the target skeleton group in the general action editing interface, the action editing interface at this time is the action editing interface based on the target skeleton group, and the relevant information of the displayed target skeleton group includes the skeletal motion track of the root skeleton.
[0094] In one embodiment, the above-mentioned provision of the skeletal action track of the first virtual skeleton may include: if the first virtual skeleton has at least one key frame, the skeletal action track of the first virtual skeleton is displayed. Generally, if no key frame has been added to the first virtual skeleton, it does not have a key frame. For a virtual skeleton without a key frame, its skeletal action track may not be displayed, and the skeletal action track of the virtual skeleton with at least one key frame may be displayed. In this way, the number of skeletal action tracks displayed in the action editing interface can be reduced, making it easier for users to find important virtual skeletons and edit them.
[0095] In one embodiment, if the action editing interface is entered by creating a new virtual action, and none of the virtual bones in the target bone group have keyframes, the bone action track of the root bone can be displayed, but the bone action tracks of all non-root bones are not displayed. Afterwards, if the user adds a keyframe to a non-root bone, the bone action track of the non-root bone is displayed.
[0096] In one embodiment, a movable first time mark is set on the skeleton action track of the first virtual skeleton to indicate the current editing time. Figure 4A A first time mark 410 is shown, and the time scale at which it is located is the current editing time. The user can move the first time mark 410 on the first time axis to change the current editing time. Accordingly, the above-mentioned response to the editing instruction of the skeletal action track of the first virtual skeleton and determination of the key frame of the first virtual skeleton may include: responding to the editing instruction of the skeletal action track of the first virtual skeleton and editing the key frame at the current editing time. Figure 4A For example, when skeleton 2 (i.e., the first virtual skeleton) is selected as the current editing virtual skeleton, if the user does not select the key frame in skeleton 2 as the current editing key frame, the key frame located at the current editing time on the skeleton action track of skeleton 2 (i.e., located on the first time mark, or the key frame aligned with the first time mark) is used as the current editing key frame. The user's editing instructions for the skeleton action track of skeleton 2 can all be used to edit the key frame. It can be seen that the user can flexibly set the current editing time through the first time mark, and edit the key frame and other information under this time, which is very convenient.
[0097] In one embodiment, responding to the editing instruction for the skeleton motion track of the first virtual skeleton and editing the key frame at the current editing time includes at least one of the following steps:
[0098] When the skeleton action track is selected, respond to the key frame adding instruction and add the key frame at the current editing time to the skeleton action track. Wherein, when the skeleton action track of the first virtual skeleton is selected, if there is no key frame at the current editing time on the skeleton action track, the user can operate to trigger the key frame adding instruction. If the key frame adding control is in an operable state at this time, the key frame adding instruction is generated when the user clicks it, triggering the generation of a new key frame at the current editing time on the skeleton action track.
[0099] When the skeleton action track is selected, respond to the key frame deletion instruction and delete the key frame at the current editing time in the skeleton action track. Wherein, when the skeleton action track of the first virtual skeleton is selected, if there is a key frame at the current editing time on the skeleton action track, the user can operate to trigger the key frame deletion instruction. If the key frame deletion control is in an operable state at this time, the key frame deletion instruction is generated when the user clicks it, triggering the deletion of the key frame at the current editing time on the skeleton action track.
[0100] When the skeleton action track is selected, the skeleton parameter adjustment instruction is responded to, and the key frame located at the current editing time in the skeleton action track is updated according to the adjusted skeleton parameters. Wherein, when the skeleton action track of the first virtual skeleton is selected, if there is a key frame at the position of the current editing time on the skeleton action track, the user can update the key frame at this position through the skeleton parameter adjustment instruction. For example, the user can directly operate the first virtual skeleton in the virtual skeleton model of the target skeleton group to adjust the skeleton parameters, or click the "Settings" control to adjust the skeleton parameters in the pop-up skeleton parameter interface, thereby updating the skeleton parameters in the key frame at the current editing time to the skeleton parameters adjusted by the user.
[0101] In one embodiment, the key frame of the first virtual skeleton is displayed on the skeleton action track of the first virtual skeleton, such as Figure 4A The diamond mark on the first timeline shown in indicates that there is a key frame at the corresponding position. Accordingly, the above-mentioned response to the editing instruction of the skeletal action track of the first virtual skeleton and determining the key frame of the first virtual skeleton may include: responding to the key frame movement instruction of the skeletal action track of the first virtual skeleton, and adjusting the time of the key frame of the first virtual skeleton according to the key frame movement instruction. Exemplarily, the user can directly drag the key frame on the skeletal action track of the first virtual skeleton to move it, thereby adjusting the time of the key frame to the time corresponding to the position after the move.
[0102] In one embodiment, the above-mentioned response to the editing instruction of the skeletal action track of the first virtual skeleton and determination of the key frames of the first virtual skeleton may include: responding to the track deletion instruction of the skeletal action track of the first virtual skeleton and deleting the key frames of the first virtual skeleton. Among them, the user can delete the entire skeletal action track of the first virtual skeleton, which is equivalent to deleting all the key frames of the first virtual skeleton. After deletion, the skeletal action track of the first virtual skeleton may not be displayed. If the key frames are re-added for the first virtual skeleton subsequently, the skeletal action track of the first virtual skeleton may be displayed again.
[0103] In one embodiment, the virtual action editing method may further include the following steps:
[0104] Provides a global bone action track for the target bone group;
[0105] In response to the third editing instruction for the global skeleton motion track, the skeleton motion track of each virtual skeleton is edited according to the third editing instruction.
[0106] The global bone action track is a track that summarizes the bone action tracks of each virtual bone in the target bone group, such as the union of the information (such as key frames) of the bone action tracks of each virtual bone. Figure 4A As shown, the summary track is the global skeleton action track, and the key frame on it indicates that at least one virtual skeleton has a key frame at this position. The third editing instruction is an editing instruction for the global skeleton action track, which is equivalent to editing the skeleton action track of each virtual skeleton.
[0107] In one embodiment, the above-mentioned response to the third editing instruction for the global skeleton motion track and editing the skeleton motion track of each virtual skeleton according to the third editing instruction may include at least one of the following steps:
[0108] In response to the instruction to select the first keyframe in the global skeleton action track, the keyframes with the same time as the first keyframe in the skeleton action track of each virtual skeleton are all used as the current editing keyframes. For example, if the user selects the first keyframe at time A in the global skeleton action track, it is equivalent to selecting the keyframe at time A in the skeleton action track of each virtual skeleton at the same time. These selected keyframes can be batch edited later.
[0109] In response to the instruction to add a second keyframe in the global bone action track, a keyframe with the same time as the second keyframe is added to the bone action track of each virtual bone. Figure 4AAs shown, when the summary track is selected, a second key frame can be added through the key frame adding control 4082. For example, the user adds a second key frame at time B in the global skeleton action track. If the global skeleton action track is selected and the first time mark is at time B, the second key frame is added to the global skeleton action track according to the key frame adding instruction, and the key frame at time B can be added to the skeleton action track of each virtual skeleton. In this way, batch adding of key frames is achieved.
[0110] In response to the instruction to delete the third keyframe in the global skeleton action track, delete the keyframes with the same time as the third keyframe in the skeleton action track of each virtual skeleton. Figure 4A As shown, when the summary track is selected, the third key frame can be deleted through the key frame deletion control 4081. For example, the user deletes the third key frame at time C in the global skeleton action track. When the global skeleton action track and the third key frame are selected, the third key frame in the global skeleton action track is deleted according to the key frame deletion instruction, and the key frame at time C in the skeleton action track of each virtual skeleton can be deleted. In this way, batch deletion of key frames is achieved.
[0111] In response to the instruction to copy the fourth keyframe in the global skeleton motion track to generate the fifth keyframe, the keyframes with the same time as the fourth keyframe in the skeleton motion track of each virtual skeleton are copied to the time of the fifth keyframe. Figure 4A As shown, when the summary track is selected, the fourth key frame can be copied to generate the fifth key frame through the key frame copy control 4083 and the key frame paste control 4084. For example, in the global skeleton action track, the user copies the fourth key frame at time D to time E to generate the fifth key frame at time E, then the key frame at time D in the skeleton action track of each virtual skeleton can be copied to time E respectively. If there is no key frame at the position of time D in the skeleton action track of a certain virtual skeleton, the copy operation is not performed for the skeleton action track. Batch copying of key frames is thus achieved. The copied key frame can inherit part or all of the information of the original key frame, such as the skeleton parameters of the copied key frame are the same as the skeleton parameters of the original key frame.
[0112] As can be seen from the above, by editing the global skeleton action track, the skeleton action tracks of multiple virtual skeletons can be batch edited, which is conducive to improving editing efficiency.
[0113] In one embodiment, reference Figure 4AAs shown in the figure, the action editing interface provides a selection control. When the selection control is turned on (e.g., you can click to turn on the selection control), the user can select one or more virtual bones by selection to use them as the current editing virtual bones, or select one or more keyframes by selection to use them as the current editing keyframes. For example, in Figure 4A In the action editing interface shown, when the box selection control is turned on (e.g., a dark box selection control indicates that it is turned on, and a light box selection control indicates that it is turned off), the user can slide to draw a box in the interface, and the bone action tracks in the box are selected, which is equivalent to selecting the virtual bones corresponding to these bone action tracks, and the key frames in the box are also selected, thereby determining the current editing virtual bone and the current editing key frame. This makes it easy for users to perform batch operations on multiple virtual bones or multiple key frames, such as batch deletion, to improve editing efficiency.
[0114] In one embodiment, the action editing interface includes a preview area, such as Figure 4A Accordingly, the virtual action editing method may further include the following steps:
[0115] In response to the preview start instruction, a screen is displayed in the preview area for controlling the second virtual character model and / or the virtual skeleton model of the target skeleton group to perform an action according to the currently edited action data. The second virtual character model is a virtual model based on the target skeleton group. For example, if the target skeleton group is an egg-shaped skeleton group, the second virtual character model can be an egg-shaped character model under the egg-shaped skeleton group. Figure 4A As shown, the editing effect of the target action can be displayed through the second virtual character model 402, the editing effect of the target action can also be displayed through the virtual skeleton model, or the editing effect of the target action can be displayed by displaying the second virtual character model 402 and the virtual skeleton model. The preview start instruction is an instruction to trigger the start of previewing the target action. Figure 4A The operation instruction of the preview start control 4041 in the preview start control 4041 is displayed. Since the editing process may not be completed at this time, during the preview, the second virtual character model 402 and / or the virtual skeleton model is controlled to perform actions according to the currently edited action data rather than the final action data, and the corresponding screen is presented, so that the user can see the actual action effect.
[0116] In one embodiment, the virtual action editing method may further include the following steps:
[0117] In response to the full-screen preview command, the preview area is expanded to the entire action editing interface, and the bone selection control is displayed; the bone selection control is used to select the currently edited virtual bone from the virtual bones.
[0118] refer to Figure 4A As shown, preview area 401 is a sub-area in the action editing interface. The full-screen preview instruction is an operation instruction that triggers the expansion of preview area 401 to the entire action editing interface ("full screen" here means occupying the entire action editing interface, not necessarily the entire screen of the terminal device). Figure 4A Operation instructions for the full screen preview control 4042 in . Figure 4C Shows a full screen preview. Figure 4C As shown, in the case of full screen preview, a bone selection control 406 may be displayed, which may include options corresponding to each virtual bone of the target bone group (such as the identifier of the virtual bone), from which the user may select one or more virtual bones as the currently edited virtual bones.
[0119] In one embodiment, the method of selecting the currently edited virtual bone includes but is not limited to the following methods: selecting the currently edited virtual bone through the bone selection control; selecting one or more virtual bones in the virtual bone model of the target bone group as the currently edited virtual bones; by selecting the bone action track, the virtual bone corresponding to the bone action track is used as the currently edited virtual bone.
[0120] In the case of full-screen preview, the second virtual character model or virtual skeleton model displayed in the preview area is also enlarged and displayed, which makes it easier for the user to directly edit the virtual body parts in the second virtual character model or the virtual skeleton in the virtual skeleton model. Figure 4C As shown, in the case of full-screen preview, if the user selects a virtual skeleton as the currently edited virtual skeleton, a corresponding editing control group 412 is provided, which may include controls such as add (keyframe), delete (keyframe), copy (keyframe), paste (keyframe), move, rotate, scale, mirror, etc. The user can use the editing control group 412 to edit the currently edited virtual skeleton. Since the displayed second virtual character model or virtual skeleton model is larger, it is easier to achieve precise operation during the editing operation, thereby improving editing efficiency.
[0121] In one embodiment, when it is determined that the virtual skeleton is currently being edited, in response to activating the target edit control in the edit control group 412, the corresponding edit auxiliary control is displayed according to the target edit control. Figure 4D The second virtual character model and virtual skeleton model (i.e., the virtual skeleton represented by the dotted line and circle in the figure) are shown in full screen preview. The user selects skeleton 4 (i.e., the left upper arm) as the currently edited virtual skeleton through the skeleton selection control 406, and clicks in the editing control group 412 of skeleton 4 to activate the "rotate" control, at which time the rotation editing auxiliary control 413 can be displayed, and the user can control the rotation of skeleton 4 along the rotation track in the rotation editing auxiliary control 413, and can intuitively see the rotation angle, thereby improving editing efficiency.
[0122] It should be noted that the present disclosure does not limit the display method of the second virtual character model or the virtual skeleton model. Figure 4C and Figure 4D The display modes of the virtual skeleton models are different in the embodiment of the present invention, mainly because the appearance and form of the virtual skeletons are different. In actual applications, the display mode of the second virtual character model or the virtual skeleton model can be set according to one's own needs.
[0123] In one embodiment, the position information of the second virtual character model or the virtual skeleton model may be displayed in the preview area. The position information is used to indicate the direction or position of the second virtual character model or the virtual skeleton model, and may be in the form of a visual identifier, numbers, text, etc. For example, Figure 4D In the figure, in front of the second virtual character model, the front direction of the second virtual character model is shown by arcs, arrows, etc., so that the user can perform editing operations more accurately.
[0124] In one embodiment, when the preview area is extended to the entire action editing interface, the global skeleton action track can be displayed, such as Figure 4C or Figure 4D The summary track in includes the first timeline, so that users can see the time progress information when previewing the action effect. In addition, in the case of full-screen preview, some editing operations can be performed through the global bone action track, such as batch adding keyframes, deleting keyframes, etc.
[0125] In one embodiment, the virtual action editing method may further include at least one of the following steps:
[0126] In response to the trigger instruction of the first preview control, a second virtual character model for preview is determined. Exemplarily, the first preview control may be Figure 4A The user can use the "Preview" control 4051 in the preview to select a virtual character model as the second virtual character model. For example, when the user clicks the "Preview" control 4051, a virtual character model selection interface pops up, including multiple optional virtual character models based on the target skeleton group. The user clicks the selection to determine the second virtual character model for preview.
[0127] In response to the trigger instruction of the second preview control, the second virtual character model is displayed or hidden in the preview area. Figure 4AThe user can use the "show" control 4052 in the figure to choose to show or hide the second virtual character model. For example, the user clicks the "show" control 4052 once to turn the control on, triggering the display of the second virtual character model. The user clicks the "show" control 4052 again to turn the control off, triggering the hiding of the second virtual character model.
[0128] In response to a trigger instruction for the third preview control, the second virtual character model displayed in the preview area is switched between its original appearance and a customized appearance; the customized appearance is an appearance determined according to a pre-performed appearance editing instruction for the second virtual character model. Exemplarily, the third preview control may be Figure 4A The user can use the "Appearance" control 4053 in the second virtual character model to select whether to display or hide the customized appearance of the second virtual character model. For example, the user clicks the "Appearance" control 4053 once to turn the control on, triggering the display of the customized appearance of the second virtual character model. The user clicks the "Appearance" control 4053 again to turn the control off, triggering the hiding of the customized appearance of the second virtual character model, that is, displaying the original appearance of the second virtual character model.
[0129] In response to the triggering operation of the fourth preview control, the virtual skeleton model of the target skeleton group is displayed or hidden in the preview area. Exemplarily, the fourth preview control can be Figure 4A The user can use the "skeleton" control 4054 in the display to choose whether to display or hide the virtual skeleton model. For example, the user clicks the "skeleton" control 4054 once to turn the control on and trigger the display of the virtual skeleton model. The user clicks the "skeleton" control 4054 again to turn the control off and trigger the hiding of the virtual skeleton model.
[0130] Through one or more of the above preview controls, users can flexibly set the appearance of the virtual model used for preview, which is convenient for selecting a second virtual character model, a custom appearance or a virtual skeleton model that better meets their needs. For example, if the user edits the target action for the purpose of setting an action for a certain virtual character model, the virtual character model can be used as the second virtual character model to preview the action effect, which is conducive to achieving an ideal editing result.
[0131] The above describes the specific method of editing virtual skeletons. In the process of editing virtual actions, in addition to editing virtual skeletons, you can also edit the attached objects.
[0132] Continue to refer Figure 2In step S230, in response to the second editing instruction for the target bone group, the attachment objects of the target bone group are determined; wherein the target bone group has one or more attachment points, and the attachment points include attachment points determined according to the basic information of the target bone group and / or customized attachment points; at least some of the attachment objects of the target bone group have a relative transformation relationship with the corresponding attachment points.
[0133] The attachment point refers to the point on the target bone group that can be used to add an attachment object. One or more attachment points can be set on a virtual bone of the target bone group, or no attachment point can be set. The attachment object refers to the component model, special effect, sound effect and other objects that can be added to the target bone group to enhance the action effect. The attachment component model refers to adding a scene component model to the virtual bone (in the actual effect, the virtual body part of the virtual character model), such as props in the game. The attachment special effect refers to adding visual effects such as glow and explosion to the virtual bone. The special effect can also be attached to the target bone group without limiting the attachment position or attachment point. The attachment sound effect is to add sound effects that match the action to the target bone group, such as the sound effect of hitting, the sound effect of running, etc., to increase the auditory experience of the virtual action. For example, the left hand bone and the right hand bone of the target bone group can be set with attachment points. After the component model is attached, the effect of the virtual character holding an object and making a specific action is realized. The attachment object can be attached to the attachment point of the target bone group, or it can be attached to the target bone group instead of a specific attachment point. The mounted object mounted on the mounting point has a relative transformation relationship with the mounting point, that is, the mounted object will move, rotate, and perform other transformation behaviors corresponding to the movement and rotation of the mounting point. In addition, the mounted object can also have transformation parameters, which are relative transformation parameters relative to the mounting point, such as relative displacement and relative rotation relative to the mounting point. In other words, there is a binding relationship between the mounted object and the corresponding mounting point. The mounted objects that do not need to be mounted on the mounting point usually include sound effects, etc., and do not need to be bound to a specific position point of the target bone group.
[0134] In one embodiment, some or all of the attachment points of the target skeleton group can be attachment points determined according to basic information. These attachment points can be called basic attachment points, such as attachment points pre-edited by game developers for the target skeleton group, or attachment points originally possessed by the target skeleton group. The basic information of the target skeleton group can include information of the basic attachment points of the target skeleton group, such as the position of the basic attachment points, the virtual skeletons to which they belong, etc. According to the basic information, it can be determined which basic attachment points the target skeleton group has.
[0135] In one embodiment, some or all of the attachment points of the target skeleton group can be self-defined attachment points. Self-defined attachment points can be attachment points created by user editing. Exemplarily, in response to an attachment point editing instruction for the target skeleton group or the third virtual character model, the self-defined attachment points of the target skeleton group are determined; the third virtual character model is a virtual model based on the target skeleton group. That is to say, when the user edits the self-defined attachment points, the target skeleton group (which can be a virtual skeleton model of the target skeleton group) can be edited, or the third virtual character model based on the target skeleton group can be edited. The attachment points can be set on the virtual skeleton of the target skeleton group, and the transformation parameters of the attachment points relative to the virtual skeleton (which can be regarded as the transformation parameters relative to the connection points of the virtual skeleton, and the connection points of the virtual skeleton are used to connect its child skeleton or father skeleton) can be set, which is equivalent to the position of setting the attachment points. The name of the attachment point can also be set, such as the body part of the target skeleton group can be used as the name of the attachment point, which is convenient for the user to understand. The edited self-defined attachment points can be applied to the target skeleton group, or to the virtual model based on the target skeleton group.
[0136] By providing users with the function of editing custom attachment points, the attachment points on the target bone group are no longer limited to the basic attachment points. Users can edit and add custom attachment points at locations where no basic attachment points were originally set, and attach the required objects when editing virtual actions. In this way, the attachment position of the attached object is no longer limited to the basic attachment point, which is conducive to improving the diversity of action editing and achieving personalized action effects.
[0137] The second editing instruction may be an operation instruction for editing the attachment object for the target skeleton group. The method of editing the attachment object is described in detail below.
[0138] In one embodiment, the above-mentioned response to the second editing instruction for the target bone group and determining the attachment object of the target bone group may include the following steps:
[0139] In response to the instruction to add a mount object for the target bone group, the mount setting interface is displayed;
[0140] In response to the setting instructions in the attachment setting interface, an attachment object is added to the target bone group according to the set attachment object information.
[0141] Among them, the attachment object adding instruction is an operation instruction used to trigger the addition of a new attachment object. For example, an attachment object adding control is provided in the action editing interface, and the attachment object adding instruction is generated when the user clicks or long presses the control. The attachment setting interface is an interface for setting attachment object information. The attachment object information includes but is not limited to one or more of the following: the type of attachment object, such as whether the attachment object to be added is a component model, special effect or sound effect; the identification of the attachment object, indicating which component model, special effect or sound effect the attachment object is; the attachment point corresponding to the attachment object, indicating which attachment point the attachment object is attached to; the effective time of the attachment object, indicating at which time point or time period the attachment object produces an effect during the execution of the target action; the transformation parameters of the attachment object. The user can set the above information in the attachment setting interface, thereby adding an attachment object to the target skeleton group according to the attachment object information set by the user.
[0142] In one embodiment, in response to the attachment object adding instruction, it is determined whether the current attachment object quantity of the target skeleton group has reached an upper limit. The upper limit can be a value set in the game program to prevent the target skeleton group from attaching too many attachment objects, resulting in excessive data loading pressure. If yes, a prompt message is displayed to prompt the user that the number of objects currently attached is too large and no more attachment objects can be added. If no, a attachment setting interface is displayed.
[0143] In one embodiment, in response to the setting instruction in the attachment setting interface, it is determined according to the set attachment object information whether the number of attachment objects of the target bone group exceeds the upper limit after adding the attachment object. If so, a prompt message is displayed to prompt the user that according to the currently set attachment object information, the number of attachment objects will exceed the upper limit, so attachment cannot be performed. If not, the attachment object is successfully added.
[0144] In one embodiment, the above-mentioned response to the instruction to add the attachment object for the target skeleton group and display the attachment setting interface may include: responding to the instruction to add the attachment track and displaying the attachment setting interface. Correspondingly, the virtual action editing method also includes: responding to adding the attachment object for the target skeleton group and generating the attachment track of the attachment object; the attachment track is used to edit the attachment object on the second timeline.
[0145] Among them, the mounting track is a control for editing the mounting object. The second timeline is the timeline in the mounting track, which represents the editable time range of the mounting object. In one embodiment, the second timeline can use conventional time units such as minutes and seconds as the time unit, or it can use the number of frames as the time unit. For example, the time unit of the total duration of the target action can be used as the time unit of the second timeline. When the total duration of the target action uses the number of frames as the time unit, the second timeline also uses the number of frames as the time unit. When the total duration of the target action uses conventional time units such as minutes and seconds, the second timeline also uses conventional time units. The user can set the starting point, end point, and duration of the second timeline. In one embodiment, the second timeline can be the total timeline of the target action by default.
[0146] In one embodiment, the action editing interface includes a track sub-interface. In response to the track switching instruction, the skeleton action track displayed in the track sub-interface is switched to the attachment track, or the attachment track displayed in the track sub-interface is switched to the skeleton action track. Figure 4A As shown, the track sub-interface can be the right half of the action editing interface. The action editing interface provides a first track switching control 4071, in which the text "skeleton action" indicates that the skeleton action track is currently being displayed. If the user clicks or long presses the first track switching control 4071, a track switching instruction is generated, triggering the switching of the skeleton action track displayed in the track sub-interface to the attachment track. Figure 5A As shown, the track sub-interface displays mounting track 1, mounting track 2, and mounting track 3, but does not display the skeleton action track. At this time, the first track switching control 4071 becomes the second track switching control 4072, and the text "mounting effect" therein indicates that the mounting track is currently being displayed. If the user clicks or long presses the second track switching control 4072, a track switching instruction is generated, triggering the mounting track displayed in the track sub-interface to be switched back to the skeleton action track. In this way, switching between the two tracks is very convenient, and there is no need to display the two tracks at the same time in the action editing interface, which ensures the simplicity of the interface and facilitates users to centrally edit keyframes or edit mounting objects at the same time. It is conducive to improving editing efficiency.
[0147] Each mounting track can correspond to one or more mounting objects, such as Figure 5A As shown, mounting track 1 corresponds to mounting component 1, mounting track 2 corresponds to mounting sound effect 2, and mounting track 3 corresponds to mounting special effect 3.
[0148] The track add instruction is an operation instruction that triggers the addition of a new track. For example, when the user clicks Figure 5AWhen the attachment track add control 4142 is clicked, the attachment track adding instruction can be triggered. Adding a new attachment track is equivalent to adding a new attachment object, which can trigger the display of the attachment setting interface and add the attachment object according to the attachment object information set by the user. When adding an attachment object to the target bone group, the attachment track corresponding to the added attachment object is generated. Subsequent users can use the attachment track to modify the attachment object information, which is very intuitive and convenient.
[0149] In one embodiment, the above-mentioned responding to the second editing instruction for the target bone group and determining the mounting object of the target bone group further includes: responding to the editing instruction for the mounting track and updating the mounting object corresponding to the mounting track.
[0150] Exemplary, reference Figure 5A As shown, a rename control 4141 is provided in the action editing interface for renaming the mounting object or mounting track, a track move up control 4143 and a move down control 4144 are provided for adjusting the order of different mounting tracks, and a mounting track delete control 4145 is provided for deleting the mounting track, which is equivalent to deleting the mounting object corresponding to the mounting track.
[0151] In one embodiment, the corresponding mounting object is displayed on the mounting track, such as Figure 5A As shown, the mounting track 1 displays the logo of the mounting component 1. The above-mentioned response to the editing instruction for the mounting track and updating the mounting object corresponding to the mounting track may include: in the case where at least one mounting object displayed on the mounting track is the currently edited mounting object, responding to the editing trigger instruction, displaying the mounting object setting interface corresponding to the currently edited mounting object; responding to the setting instruction in the mounting object setting interface, updating the currently edited mounting object according to the set mounting object information. Figure 5B As shown, when the mounting component 1 on the mounting track 1 is selected as the currently edited mounting object, the action editing interface may provide a mounting object setting control 4146 and a mounting object deletion control 4147. When the user clicks the mounting object setting control 4146, an edit trigger instruction is generated, which may trigger the display of the mounting object setting interface of the mounting component 1. When the user clicks the mounting object deletion control 4147, the mounting component 1 may be deleted. In one embodiment, if all mounting objects on a mounting track are deleted, the mounting track may be deleted together, or the mounting track may be retained and mounting objects may be added to the mounting track later.
[0152] In one embodiment, a movable second time mark is provided on the mounting track to indicate the effective time of the mounting object. Figure 5A or Figure 5BThe second time identifiers 4111, 4112, and 4113 are shown in the figure. The second time identifier 4111 indicates the effective time of the mounting component 1, which indicates the time period from the beginning of the effective time to the end of the effective time of the mounting component 1. The above-mentioned response to the editing instruction of the mounting track updates the mounting object corresponding to the mounting track, including: responding to the adjustment instruction for the second time identifier, and adjusting the effective time of the mounting object. The second time identifier can indicate a time point or a time period. The user can move the second time identifier, or move the starting point or end point of the second time identifier. The effective time of the mounting object is thereby adjusted. For example, in Figure 5A or Figure 5B In the example, the user can drag the start point or end point of the second time mark 4111 to adjust the start effective time and the end effective time of the hook component 1.
[0153] In one embodiment, the attachment setting interface includes an attachment type selection interface and an attachment object setting interface. The above-mentioned response to the setting instruction in the attachment setting interface and adding an attachment object to the target bone group according to the set attachment object information may include the following steps:
[0154] In response to a selection instruction in the mount type selection interface, a target mount type is determined from a plurality of candidate mount types;
[0155] Display the mounting object setting interface corresponding to the target mounting type;
[0156] Respond to the setting instructions in the attachment object setting interface and add attachment objects to the target bone group according to the set attachment object information.
[0157] The candidate attachment type refers to the type of attachment object that the user can select, such as component attachment type, special effect attachment type, sound effect attachment type, etc. For example, if the user Figure 5A Click the track add control 4142 in the action editing interface to trigger the display Figure 5C The attachment type selection interface shown includes three candidate attachment types: component attachment type (i.e., "create component"), special effect attachment type (i.e., "create special effect"), and sound effect attachment type (i.e., "create sound effect"). For example, if the user selects the component attachment type, the attachment object setting interface corresponding to the component attachment type is triggered and displayed. The interface can be used to set the relevant information of the component model, such as selecting a specific component model, setting the attachment point corresponding to the attachment object, and the transformation parameters of the attachment object.
[0158] It should be understood that in the mounting object setting interface corresponding to different mounting types, the types of mounting object information that can be set can be different. For example, if the target mounting type is a component mounting type, the mounting object information includes the identification of the mounting object, the effective time, the mounting point corresponding to the mounting object, and can also include the transformation parameters of the mounting object. If the target mounting type is a special effect mounting type, the mounting object information includes the identification of the mounting object, the effective time, the mounting point corresponding to the mounting object, and can also include the transformation parameters of the mounting object. If the target mounting type is a sound effect mounting type, the mounting object information includes the identification of the mounting object and the effective time. It can be seen that in the mounting object setting interface corresponding to the sound effect mounting type, there is no need to set the mounting point (because the sound effect does not need to be mounted on a certain mounting point, it can be mounted on the target skeleton group), and there is no need to set the transformation parameters (because the sound effect does not have transformation parameters).
[0159] Figure 5D A schematic diagram of the mounting object setting interface corresponding to the component mounting type is shown, where "anchor point" represents the mounting object, and the user can set the anchor point name, effective time (or effective frame, as mentioned above, the time is expressed in number of frames), duration, mounting location, offset position, relative rotation, relative scaling, mounted component, etc. Figure 5E A schematic diagram of the hook object setting interface corresponding to the sound effect hook type is shown, in which the user can set the anchor point name, effective time, duration, created sound effect, sound effect parameters, etc.
[0160] The mounting object information is obtained according to the setting instructions of the user in the mounting object setting interface corresponding to the target mounting type, and the mounting object under the target mounting type is added to the target bone group.
[0161] In one embodiment, responding to the setting instruction in the attachment object setting interface and adding the attachment object to the target bone group according to the set attachment object information may include: responding to the attachment point setting instruction in the attachment object setting interface and determining the attachment point corresponding to the attachment object from the attachment points of the target bone. Figure 5D The interface for setting the mounting object corresponding to the component mounting type shown in the figure can be used to set the mounting point through the "mounting part" item in the interface. For example, the user can pull down the "mounting part" option, which includes all the available mounting points of the target bone group. The user can select from them to determine the mounting point corresponding to the currently edited mounting object. In this way, the user can flexibly select the mounting point corresponding to the mounting object, with a high degree of editing freedom.
[0162] In one embodiment, if the target attachment type is a component attachment type, the above-mentioned response to the setting instruction in the attachment object setting interface, adding an attachment object to the target bone group according to the set attachment object information, may include the following steps:
[0163] In response to a first object selection instruction in the attachment object setting interface, a game editing scene is displayed; the game editing scene includes one or more scene components;
[0164] In response to a scene component selection instruction in a game editing scene, a target scene component is determined from the one or more scene components, and a hanging component model of a target skeleton group is determined according to model information of the target scene component; the hanging object of the target skeleton group includes the hanging component model.
[0165] The mounting object under the component mounting type is the mounting component model. The first object selection instruction is an instruction to trigger the selection of the mounting component model from the game editing scene. Figure 5D As shown, when the user clicks the "Select from Scene" control, the first object selection instruction is triggered, and then the game editing scene is jumped to, as shown in Figure 6 The interface shown in FIG. The user can directly select in the game editing scene, or select in the scene component list on the right. The scene component selected by the user is called the target scene component. When determining the target scene component, the target scene component is not directly mounted on the target skeleton group, but the component model is determined according to the model information of the target scene component. The component model can inherit part or all of the information of the target scene component, such as only including the appearance information of the target scene component, and not including other attribute information such as physics. The component model is mounted on the target skeleton group, thereby determining the mounting component model of the target skeleton group. For example, the mounting component model only has appearance information, and does not have other attribute information such as physics. During the execution of the target action, the visual effect is achieved by presenting the mounting component model, without the need for the mounting component model to collide with other virtual objects and other physical interactions. Compared with mounting the target scene component on the target skeleton group, the mounting component model reduces the amount of data related to the mounting. Moreover, the mounting component model and the target scene component are two independent objects. During the execution of the target action, the control of the mounting component model will not affect the target scene component, avoiding the impact on the original game logic of the game editing scene.
[0166] In one embodiment, after selecting the target scene component, if the target scene component is determined to be a mountable scene component, subsequent steps such as determining the mountable component model of the target skeleton group according to the model information of the target scene component are performed normally. If the target scene component is determined to be a non-mountable scene component (such as a component without an entity), a failure prompt message is displayed to prompt that the currently selected target scene component cannot be mounted, and the user needs to reselect the target scene component.
[0167] In one embodiment, the virtual action editing method may further include the following steps:
[0168] Respond to the first time setting instruction and set the total duration of the target action;
[0169] In response to the second time setting instruction, the time unit corresponding to the effective time of the key frame and / or the attached object is set.
[0170] Among them, the first time setting instruction is used to set the total duration value of the target action, such as Figure 4A It is shown that the total duration of the target action is 150 frames. The user can modify the value of 150 frames. The modification operation instruction is the first time setting instruction. The second time setting instruction is used to switch the time unit. The time unit corresponding to the key frame can be the time unit of the first time axis, or the time unit in the key frame setting interface. The time unit corresponding to the effective time of the attachment object can be the time unit of the second time axis, or the time unit in the attachment setting interface. Through the second time setting instruction, the above time units can be switched between different time units such as conventional time units, frame number time units, etc. to meet the different needs of users.
[0171] Continue to refer Figure 2 In step S240, the action data of the target action is generated according to the key frame and the attachment object.
[0172] It should be understood that the action data of the target action may include the data necessary for realizing the target action, i.e., the data of the keyframe and the attachment object. Of course, when editing the target action, the attachment object may not be set, i.e., the target skeleton group is not attached to any object, and the action data does not include the data of the attachment object. In addition, the action data may also include other data such as duration data. After the editing is completed, the action data of the target action may be saved.
[0173] In one implementation, a user can publish a target action, and a terminal device can upload the action data of the target action stored locally to a server, and the server publishes the action data to an action data pool, and other users can download the action data to use the target action, thereby realizing a convenient UGC function.
[0174] In one implementation, the above-mentioned generating the motion data of the target motion according to the key frame and the attachment object may include the following steps:
[0175] Determine the resource usage value of the target action according to the number of key frames and the number of attached objects;
[0176] If the resource occupancy value does not exceed the action threshold, action data of the target action is generated.
[0177] Among them, the resource occupancy value is a quantified value of the computing power, storage and other resources required to achieve the target action. Generally, the more key frames and the more attached objects there are, the greater the resource occupancy value of the target action. Therefore, the resource occupancy value of the target action can be preliminarily determined based on the number of key frames and the number of attached objects. The resource occupancy value can be an estimated value, not an exact value. Since the action data needs to be processed when executing the target action, the exact resource occupancy value may be difficult to calculate in advance. The estimated resource occupancy value can roughly characterize the resource overhead of the target action.
[0178] The action threshold is the upper limit of resource usage set for a single virtual action, that is, the resource usage value of a single virtual action must not exceed the action threshold, thereby avoiding a single virtual action being too complicated and causing excessive pressure on the terminal device or server during operation. If the resource usage value of the target action does not exceed the action threshold, the action data of the target action is generated. In addition, if the action threshold is exceeded, a prompt message can be presented to prompt the user that the current target action data is too large and needs to be simplified.
[0179] For example, the resource occupancy value of each key frame is about 5, the resource occupancy value of the component mount type mount object is about 4, the resource occupancy value of the special effect mount type mount object is about 2, and the resource occupancy value of the sound effect mount type mount object is about 2. Thus, the resource occupancy value of the target action can be estimated. The action threshold is set to 1000. If the resource occupancy value of the target action exceeds 1000, it is prompted that the action data cannot be saved. If the resource occupancy value of the target action does not exceed 1000, the target action can be saved, that is, the action data of the target action can be saved.
[0180] In one implementation, the action data of the target action includes the following data: the name of the target action, the duration of the target action, the identifier of the target skeleton group to which the target action belongs, the data of the key frame, and the data of the attachment object.
[0181] Continue to refer Figure 2 In step S250, in response to the triggering action execution condition, the first virtual character model configured with the target action is controlled to execute the target action according to the action data, and the attachment object is presented at the effective time of the attachment object; the first virtual character model is a virtual model based on the target skeleton group.
[0182] The action execution condition is a condition that triggers the first virtual character to perform a target action, which is usually a condition that can be triggered during the game running stage. For example, the user can set the first virtual character to perform a target action when it is interacted with by the player character. During the game running stage, when the player character interacts with the first virtual character, the action execution condition is triggered, causing the first virtual character to perform the target action.
[0183] During the execution of the target action, the virtual skeleton of the first virtual character is controlled to perform corresponding movements according to the action data of the target action, thereby demonstrating the effect of the target action, and presenting the attachment object at the effective time of the attachment object, such as displaying the attachment component model at the attachment point of the first virtual character at the effective time of the attachment component model, playing the attachment sound effect at the effective time of the attachment sound effect, and so on.
[0184] In one embodiment, the above-mentioned display of the action editing interface based on the target bone group in the graphical user interface may include: displaying a game editing scene in the graphical user interface; responding to an action editing trigger instruction in the game editing scene, controlling the game editing scene displayed in the graphical user interface to be switched to the action editing interface; the action editing trigger instruction includes an instruction to select a target bone group from multiple candidate bone groups.
[0185] In one embodiment, the virtual action editing method further includes:
[0186] In response to an action setting instruction for a virtual character component in a game editing scene, a target action and an action execution condition corresponding to the target action are configured for the virtual character component according to the action setting instruction. The virtual character component may be a scene component of a character type, such as an NPC, a player character, etc. An action may be set for the virtual character component, and a target action may be selected when setting an action, thereby configuring a target action for the virtual character component, and an action execution condition corresponding to the target action may be set.
[0187] Accordingly, the above-mentioned response triggering action execution condition, controlling the first virtual character model configured with the target action to execute the target action according to the action data, and presenting the attachment object at the effective time of the attachment object may include the following steps:
[0188] During the game running stage, in response to the triggering action execution conditions, the first virtual character model is controlled to execute the target action according to the action data, and the attachment object is presented at the effective time of the attachment object; the first virtual character model is a virtual model generated by the virtual character component during the game running stage.
[0189] The above illustrates how the target action edited by the user produces actual effects during the game running stage. After editing the target action, the user can configure the target action for the appropriate virtual character component in the game editing scene, so that during the game running stage, the corresponding first virtual character model can perform the target action. This achieves flexible editing and application of the target action.
[0190] The exemplary embodiment of the present disclosure also provides a virtual action editing device. Figure 7 As shown, the virtual action editing device 700 may include the following program modules:
[0191] The interface display processing module 710 is configured to display an action editing interface based on a target skeleton group in a graphical user interface; the target skeleton group includes a plurality of virtual skeletons;
[0192] A first editing processing module 720 is configured to respond to a first editing instruction for a first virtual bone in the target bone group and determine a key frame of the first virtual bone;
[0193] The second editing processing module 730 is configured to respond to the second editing instruction for the target bone group and determine the attachment objects of the target bone group; wherein the target bone group has one or more attachment points, and the attachment points include attachment points determined according to the basic information of the target bone group and / or user-defined attachment points; at least part of the attachment objects of the target bone group have a relative transformation relationship with the corresponding attachment points;
[0194] The action data generating module 740 is configured to generate action data of a target action according to the key frame and the attachment object;
[0195] The action execution processing module 750 is configured to respond to the triggering action execution condition, control the first virtual character model configured with the target action to execute the target action according to the action data, and present the attachment object at the effective time of the attachment object; the first virtual character model is a virtual model based on the target skeleton group.
[0196] In one embodiment, the response to a first editing instruction for a first virtual bone in the target bone group determines the key frame of the first virtual bone, including: responding to a key frame adding instruction for the first virtual bone, adding a new key frame for the first virtual bone according to the current bone parameters of the first virtual bone.
[0197] In one embodiment, the response to the key frame adding instruction for the first virtual skeleton, adding a new key frame for the first virtual skeleton according to the current bone parameters of the first virtual skeleton, includes at least one of the following methods: providing a key frame adding control, and when the first virtual skeleton is the currently edited virtual skeleton, responding to the triggering instruction of the key frame adding control, adding a new key frame for the first virtual skeleton according to the current bone parameters of the first virtual skeleton; when the automatic key frame insertion function is turned on, responding to the bone parameter adjustment instruction for the first virtual skeleton, adding a new key frame for the first virtual skeleton according to the adjusted bone parameters.
[0198] In one embodiment, the response to a first editing instruction for a first virtual bone in the target bone group determines the key frame of the first virtual bone, including: responding to a bone parameter adjustment instruction for the first virtual bone, with at least one existing key frame of the first virtual bone as the current editing key frame, and updating the current editing key frame according to the adjusted bone parameters.
[0199] In one embodiment, the bone parameter adjustment instruction includes at least one of the following methods: providing a bone parameter interface of the first virtual skeleton, and generating the bone parameter adjustment instruction according to the editing operation in the bone parameter interface; displaying the virtual bone model of the target bone group, and generating the bone parameter adjustment instruction according to the editing operation of the first virtual bone in the virtual bone model; displaying a second virtual character model; the second virtual character model is a virtual character model based on the target bone group, and the second virtual character model includes virtual body parts corresponding to the virtual bones of the target bone group, wherein the first virtual body part corresponds to the first virtual skeleton; generating the bone parameter adjustment instruction according to the editing operation of the first virtual body part in the second virtual character model.
[0200] In one embodiment, when adjusting the bone parameters of the first virtual bone, the device is also used to perform at least one of the following steps: if the first virtual bone is the root bone in the target bone group, the position of the first virtual bone is allowed to be adjusted; the non-root bones in the target bone group have a binding transformation relationship with their parent bones, and the root bones do not have a parent bone; if the first virtual bone is a non-root bone and supports inverse kinematics, the position of the first virtual bone is allowed to be adjusted; if the first virtual bone is a non-root bone and does not support inverse kinematics, the position of the first virtual bone is not allowed to be adjusted.
[0201] In one embodiment, the device is also used for: if the first virtual skeleton is a non-root skeleton and supports inverse kinematics, in response to adjusting the position of the first virtual skeleton, adjusting the position of the parent skeleton of the first virtual skeleton according to the position adjustment information of the first virtual skeleton.
[0202] In one embodiment, the response to a first editing instruction for a first virtual bone in the target bone group determines the key frame of the first virtual bone, including: providing a bone action track for the first virtual bone, the bone action track being used to edit the key frame of the first virtual bone on a first timeline; and responding to an editing instruction for the bone action track of the first virtual bone to determine the key frame of the first virtual bone.
[0203] In one embodiment, providing the skeletal motion track of the first virtual skeleton includes: if the first virtual skeleton is the root skeleton in the target skeleton group, when entering the motion editing interface, displaying the skeletal motion track of the first virtual skeleton.
[0204] In one embodiment, providing the skeletal motion track of the first virtual skeleton includes: if the first virtual skeleton has at least one key frame, displaying the skeletal motion track of the first virtual skeleton.
[0205] In one embodiment, a movable first time marker is set on the bone action track of the first virtual skeleton to indicate the current editing time; the response to the editing instruction for the bone action track of the first virtual skeleton and the determination of the key frame of the first virtual skeleton include: responding to the editing instruction for the bone action track of the first virtual skeleton and editing the key frame located at the current editing time.
[0206] In one embodiment, responding to an editing instruction for the skeleton action track of the first virtual skeleton and editing the key frame located at the current editing time includes at least one of the following steps: when the skeleton action track is selected, responding to a key frame adding instruction and adding the key frame located at the current editing time to the skeleton action track; when the skeleton action track is selected, responding to a key frame deleting instruction and deleting the key frame located at the current editing time in the skeleton action track; when the skeleton action track is selected, responding to a bone parameter adjustment instruction and updating the key frame located at the current editing time in the skeleton action track according to the adjusted bone parameters.
[0207] In one embodiment, the key frames of the first virtual skeleton are displayed on the skeleton action track of the first virtual skeleton; the key frames of the first virtual skeleton are determined in response to the editing instructions for the skeleton action track of the first virtual skeleton, including: responding to the key frame movement instructions for the skeleton action track of the first virtual skeleton, and adjusting the time of the key frames of the first virtual skeleton according to the key frame movement instructions.
[0208] In one embodiment, responding to an edit instruction for the skeleton action track of the first virtual skeleton and determining the key frame of the first virtual skeleton includes: responding to a track deletion instruction for the skeleton action track of the first virtual skeleton and deleting the key frame of the first virtual skeleton.
[0209] In one embodiment, the device is further used to: provide a global skeleton action track of the target skeleton group; respond to a third editing instruction for the global skeleton action track, and edit the skeleton action track of each virtual skeleton according to the third editing instruction.
[0210] In one embodiment, the response to the third editing instruction for the global skeleton action track, editing the skeleton action track of each of the virtual bones according to the third editing instruction, includes at least one of the following steps: responding to the instruction to select the first key frame in the global skeleton action track, taking the key frames with the same time as the first key frame in the skeleton action track of each of the virtual bones as the current editing key frames; responding to the instruction to add the second key frame in the global skeleton action track, adding the key frame with the same time as the second key frame in the skeleton action track of each of the virtual bones; responding to the instruction to delete the third key frame in the global skeleton action track, deleting the key frame with the same time as the third key frame in the skeleton action track of each of the virtual bones; responding to the instruction to copy the fourth key frame in the global skeleton action track to generate the fifth key frame, copying the key frames with the same time as the fourth key frame in the skeleton action track of each of the virtual bones to the time of the fifth key frame.
[0211] In one embodiment, the action editing interface includes a preview area; the device is also used to: respond to a preview start instruction and display a screen in the preview area for controlling the second virtual character model and / or the virtual skeleton model of the target skeleton group to perform an action according to the currently edited action data.
[0212] In one embodiment, the device is also used to: respond to a full-screen preview instruction, expand the preview area to the entire action editing interface, and display a bone selection control; the bone selection control is used to select a currently edited virtual bone from the virtual bones.
[0213] In one embodiment, the device is also used to perform at least one of the following steps: responding to a trigger instruction of a first preview control, determining the second virtual character model for preview; responding to a trigger instruction of a second preview control, displaying or hiding the second virtual character model in the preview area; responding to a trigger instruction of a third preview control, switching the second virtual character model displayed in the preview area between its original appearance and a custom appearance; the custom appearance is an appearance determined according to an appearance editing instruction pre-performed on the second virtual character model; responding to a trigger operation of a fourth preview control, displaying or hiding the virtual skeleton model of the target skeleton group in the preview area.
[0214] In one embodiment, the response to the second editing instruction for the target bone group determines the attachment object of the target bone group, including: responding to the attachment object adding instruction for the target bone group, displaying the attachment setting interface; responding to the setting instruction in the attachment setting interface, adding the attachment object to the target bone group according to the set attachment object information.
[0215] In one embodiment, the attachment setting interface includes an attachment type selection interface and an attachment object setting interface; the response to the setting instruction in the attachment setting interface and the adding of the attachment object to the target bone group according to the set attachment object information include: responding to the selection instruction in the attachment type selection interface and determining the target attachment type from multiple candidate attachment types; displaying the attachment object setting interface corresponding to the target attachment type; responding to the setting instruction in the attachment object setting interface and the adding of the attachment object to the target bone group according to the set attachment object information.
[0216] In one embodiment, if the target mounting type is a component mounting type, the mounting object information includes the mounting object identifier, the effective time, and the mounting point corresponding to the mounting object; if the target mounting type is a special effect mounting type, the mounting object information includes the mounting object identifier, the effective time, and the mounting point corresponding to the mounting object; if the target mounting type is a sound effect mounting type, the mounting object information includes the mounting object identifier and the effective time.
[0217] In one embodiment, the response to the setting instruction in the attachment object setting interface adds an attachment object to the target bone group according to the set attachment object information, including: responding to the attachment point setting instruction in the attachment object setting interface, determining the attachment point corresponding to the attachment object from the attachment points of the target bone.
[0218] In one embodiment, if the target attachment type is a component attachment type, the response to the setting instruction in the attachment object setting interface adds an attachment object to the target bone group according to the set attachment object information, including: responding to the first object selection instruction in the attachment object setting interface, displaying a game editing scene; the game editing scene includes one or more scene components; responding to the scene component selection instruction in the game editing scene, determining a target scene component from the one or more scene components, and determining the attachment component model of the target bone group according to the model information of the target scene component; the attachment object of the target bone group includes the attachment component model.
[0219] In one embodiment, the response to adding an instruction to add an attachment object to the target bone group and displaying an attachment setting interface includes: responding to an instruction to add an attachment track and displaying an attachment setting interface; the device is also used to: respond to adding an attachment object to the target bone group and generate an attachment track for the attachment object; the attachment track is used to edit the attachment object on a second timeline.
[0220] In one embodiment, the determining the attachment object of the target bone group in response to the second editing instruction for the target bone group further includes: updating the attachment object corresponding to the attachment track in response to the editing instruction for the attachment track.
[0221] In one embodiment, the corresponding mounting object is displayed on the mounting track; the response to the editing instruction for the mounting track to update the mounting object corresponding to the mounting track includes: in a case where at least one mounting object displayed on the mounting track is the currently edited mounting object, responding to the editing trigger instruction to display the mounting object setting interface corresponding to the currently edited mounting object; responding to the setting instruction in the mounting object setting interface to update the currently edited mounting object according to the set mounting object information.
[0222] In one embodiment, a movable second time marker is provided on the mounting track for indicating the effective time of the mounting object; the response to the editing instruction for the mounting track and the updating of the mounting object corresponding to the mounting track include: responding to the adjustment instruction for the second time marker and adjusting the effective time of the mounting object.
[0223] In one embodiment, the device is also used to: respond to a first time setting instruction to set the total duration of the target action; respond to a second time setting instruction to set the time unit corresponding to the effective time of the key frame and / or the attachment object.
[0224] In one embodiment, the device is also used to: respond to an attachment point editing instruction for the target bone group or a third virtual character model, and determine the customized attachment points of the target bone group; the third virtual character model is a virtual model based on the target bone group.
[0225] In one embodiment, generating action data of the target action based on the key frames and the attachment objects includes: determining the resource occupancy value of the target action based on the number of the key frames and the number of the attachment objects; if the resource occupancy value does not exceed the action threshold, generating the action data of the target action.
[0226] In one embodiment, the displaying of an action editing interface based on a target bone group in a graphical user interface includes: displaying a game editing scene in the graphical user interface; responding to an action editing trigger instruction in the game editing scene, controlling the game editing scene displayed in the graphical user interface to be switched to the action editing interface; the action editing trigger instruction includes an instruction to select the target bone group from a plurality of candidate bone groups.
[0227] In one embodiment, the device is also used to: respond to an action setting instruction for a virtual character component in a game editing scene, configure the target action and the action execution condition corresponding to the target action for the virtual character component according to the action setting instruction; respond to triggering the action execution condition, control the first virtual character model configured with the target action to execute the target action according to the action data, and present the attachment object at the effective time of the attachment object, including: in the game running stage, respond to triggering the action execution condition, control the first virtual character model to execute the target action according to the action data, and present the attachment object at the effective time of the attachment object; the first virtual character model is a virtual model generated accordingly by the virtual character component in the game running stage.
[0228] The specific details of each part of the above-mentioned device have been described in detail in the implementation method of the method part. The undisclosed details can be found in the implementation method of the method part, so they will not be repeated here.
[0229] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the exemplary embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.
[0230] The exemplary embodiments of the present disclosure also provide a computer program product, which includes a computer program, and when the computer program is executed by a processor, the above-mentioned virtual action editing method is implemented.
[0231] In one embodiment, the computer program product may be a tangible product containing a computer program, such as a computer-readable storage medium storing a computer program. The readable storage medium may be a storage medium based on electrical, magnetic, optical, electromagnetic, infrared, or other signals, including but not limited to: random access memory (RAM), read-only memory (ROM), magnetic tape, floppy disk, flash memory (Flash), mechanical hard disk (HDD), solid-state drive (SSD), and the like. Exemplarily, the computer program product may be implemented as a non-volatile storage medium storing a computer program, such as a read-only memory, a NAND flash memory, and the like.
[0232] In one embodiment, the computer program product may be an intangible product including a computer program. Exemplarily, the computer program product may be implemented as a virtual digital product, such as a digital file storing an executable file, an installation package, etc. of the computer program.
[0233] The code of the computer program can be written in one or more programming languages. Programming languages such as C language, Java, C++, etc. The program code can be executed entirely on the user computing device, or partially on the user computing device, or as a separate software package, or partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, such as a local area network (LAN), a wide area network (WAN), etc., or can be connected to an external computing device (e.g., an Internet connection provided by an operator).
[0234] The computer program can be carried or transmitted through electrical, magnetic, optical, electromagnetic, infrared and other signals. The electronic device can convert the signal carrying the computer program into a digital signal, and then run the computer program. When the computer program is running on the electronic device, its code is used to enable the electronic device to execute (more specifically, it can enable the processor of the electronic device to execute) the method steps of various exemplary embodiments of the present disclosure, such as the above-mentioned virtual action editing method, which includes the following steps: step S210, displaying an action editing interface based on the target bone group in a graphical user interface; the target bone group includes multiple virtual bones; step S220, responding to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone; step S230, responding to a second editing instruction for the target bone group, determining a key frame of the target bone The target skeleton group has one or more attachment points, and the attachment points include attachment points determined according to the basic information of the target skeleton group and / or customized attachment points; at least part of the attachment objects of the target skeleton group have a relative transformation relationship with the corresponding attachment points; step S240, generating action data of the target action according to the key frames and the attachment objects; step S250, responding to the triggering action execution condition, controlling the first virtual character model configured with the target action to execute the target action according to the action data, and presenting the attachment object at the effective time of the attachment object; the first virtual character model is a virtual model based on the target skeleton group.
[0235] The above method steps are implemented by a computer program. In the action editing interface based on the target skeleton group, the user can determine the key frame of the first virtual skeleton through the first editing instruction, and determine the hanging object of the target skeleton group through the second editing instruction, thereby generating the action data of the target action. The target action can be applied to the first virtual character model based on the target skeleton group, so that when it is configured with the target action, it responds to the trigger action execution condition and executes the target action. On the one hand, a user-defined function of editing virtual actions is provided. In the process of editing virtual actions, the key frame of the virtual skeleton can be edited, and the object can also be hung for the target skeleton group. By combining the key frame with the hanging object, a variety of action effects can be achieved. On the other hand, the editing operation process is relatively simple, the user learning cost is low, and it is conducive to popularization.
[0236] The exemplary embodiments of the present disclosure also provide an electronic device, such as the terminal device 110 or the server 120 described above. The electronic device may include a processor and a memory. The memory stores executable instructions of the processor, such as a computer program. The processor executes the method steps of various exemplary embodiments of the present disclosure by executing the executable instructions. In addition, the electronic device may also include a display for displaying a graphical user interface.
[0237] Reference below Figure 8 , the electronic device is exemplarily described in the form of a general-purpose computing device. It should be understood that Figure 8 The electronic device 800 shown is merely an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
[0238] like Figure 8 As shown, the electronic device 800 may include: a processor 810 , a memory 820 , a bus 830 , an I / O (input / output) interface 840 , a network adapter 850 , and a display 860 .
[0239] The memory 820 may include a volatile memory, such as a RAM 821, a cache unit 822, and may also include a non-volatile memory, such as a ROM 823. The memory 820 may also include one or more program modules 824, such program modules 824 include but are not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or a combination thereof may include the implementation of a network environment. For example, the program module 824 may include each module in the above-mentioned device.
[0240] The processor 810 may include one or more processing units. For example, the processor 810 may include an AP (Application Processor), a modem processor, a GPU (Graphics Processing Unit), an ISP (Image Signal Processor), a controller, an encoder, a decoder, a DSP (Digital Signal Processor), a baseband processor and / or an NPU (Neural-Network Processing Unit), etc.
[0241] The processor 810 can be used to execute the executable instructions stored in the memory 820, such as the above-mentioned virtual action editing method, which includes the following steps: step S210, displaying an action editing interface based on the target bone group in a graphical user interface; the target bone group includes multiple virtual bones; step S220, responding to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone; step S230, responding to a second editing instruction for the target bone group, determining a hanging object of the target bone group; wherein the target bone group has one or more hanging points, and the hanging points include hanging points determined according to basic information of the target bone group and / or customized hanging points; at least part of the hanging objects of the target bone group have a relative transformation relationship with the corresponding hanging points; step S240, generating action data of the target action according to the key frame and the hanging object; step S250, responding to a triggering action execution condition, controlling a first virtual character model configured with the target action to execute the target action according to the action data, and presenting the hanging object at the effective time of the hanging object; the first virtual character model is a virtual model based on the target bone group.
[0242] The above method steps are performed by processor 810. In the action editing interface based on the target skeleton group, the user can determine the key frame of the first virtual skeleton through the first editing instruction, and determine the hanging object of the target skeleton group through the second editing instruction, thereby generating the action data of the target action. The target action can be applied to the first virtual character model based on the target skeleton group, so that when it is configured with the target action, it responds to the triggering action execution condition and performs the target action. On the one hand, a user-defined function of editing virtual actions is provided. In the process of editing virtual actions, the key frame of the virtual skeleton can be edited, and the hanging object can also be the target skeleton group. The key frame is combined with the hanging object to achieve a variety of action effects. On the other hand, the editing operation process is relatively simple, and the user learning cost is low, which is conducive to popularization.
[0243] The bus 830 is used to realize the connection between different components of the electronic device 800, and may include a data bus, an address bus, and a control bus.
[0244] The electronic device 800 can communicate with one or more external devices 800 (eg, a keyboard, a mouse, an external controller, etc.) through the I / O interface 840 .
[0245] The electronic device 800 can communicate with one or more networks through the network adapter 850. For example, the network adapter 850 can provide mobile communication solutions such as 3G / 4G / 5G, or wireless communication solutions such as wireless LAN, Bluetooth, near field communication, etc. The network adapter 850 can communicate with other modules of the electronic device 800 through the bus 830.
[0246] The electronic device 800 can display a graphical user interface through the display 860, such as displaying a game editing scene, an action editing interface, etc.
[0247] although Figure 8 Not shown, other hardware and / or software modules may also be provided in the electronic device 800, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.
[0248] As can be seen from the above, the technical solution of the present disclosure can be implemented as a method, an apparatus, a system, a computer program product, a storage medium, an electronic device, etc. Those skilled in the art can understand that various aspects of the present disclosure can be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or an implementation combining hardware and software, such as being respectively referred to as a "circuit", "module" or "system".
[0249] It should be understood that the present disclosure is not limited to the specific method steps or structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from the scope thereof. Those skilled in the art will easily think of other embodiments based on the specific embodiments provided by the present disclosure. Therefore, the specific embodiments provided by the present disclosure are only exemplary, and the scope and spirit of the present disclosure are indicated by the claims, and any variations, uses or adaptive changes of the present disclosure should be covered, which follow the general principles of the present disclosure and include common knowledge or customary technical means in the technical field that are not disclosed in the present disclosure.
Claims
1. A virtual action editing method, characterized in that: The method comprises: Displaying an action editing interface based on a target skeleton group in a graphical user interface; the target skeleton group includes a plurality of virtual skeletons; In response to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone; In response to a second editing instruction for the target bone group, determining the attachment objects of the target bone group; wherein the target bone group has one or more attachment points, and the attachment points include attachment points determined according to basic information of the target bone group and / or user-defined attachment points; at least part of the attachment objects of the target bone group have a relative transformation relationship with the corresponding attachment points; generating motion data of a target motion according to the key frame and the attachment object; In response to the triggering action execution condition, the first virtual character model configured with the target action is controlled according to the action data to execute the target action, and the attachment object is presented at the effective time of the attachment object; the first virtual character model is a virtual model based on the target skeleton group.
2. The method according to claim 1, characterized in that In response to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone comprises: In response to the key frame adding instruction for the first virtual skeleton, a new key frame is added for the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton.
3. The method according to claim 2, characterized in that In response to the key frame adding instruction for the first virtual skeleton, adding a new key frame for the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton includes at least one of the following methods: Providing a keyframe adding control, when the first virtual skeleton is the currently edited virtual skeleton, responding to a triggering instruction of the keyframe adding control, adding a new keyframe for the first virtual skeleton according to the current skeleton parameters of the first virtual skeleton; When the automatic keyframe insertion function is turned on, in response to the bone parameter adjustment instruction for the first virtual skeleton, a new keyframe is added to the first virtual skeleton according to the adjusted bone parameters.
4. The method according to claim 1, characterized in that: In response to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone comprises: In a case where at least one existing key frame of the first virtual skeleton is used as the current editing key frame, in response to a bone parameter adjustment instruction for the first virtual skeleton, the current editing key frame is updated according to the adjusted bone parameters.
5. The method according to claim 3 or 4, characterized in that: The bone parameter adjustment instruction includes at least one of the following methods: Providing a skeleton parameter interface of the first virtual skeleton, and generating the skeleton parameter adjustment instruction according to the editing operation in the skeleton parameter interface; Displaying a virtual skeleton model of the target skeleton group, and generating a skeleton parameter adjustment instruction according to an editing operation on a first virtual skeleton in the virtual skeleton model; Display a second virtual character model; the second virtual character model is a virtual character model based on a target bone group, the second virtual character model includes virtual body parts corresponding to virtual bones of the target bone group, wherein a first virtual body part corresponds to the first virtual bone; generate a bone parameter adjustment instruction according to an editing operation on the first virtual body part in the second virtual character model.
6. The method according to any one of claims 3 or 4, characterized in that: When adjusting the skeleton parameters of the first virtual skeleton, the method further includes at least one of the following steps: If the first virtual bone is the root bone in the target bone group, the position of the first virtual bone is allowed to be adjusted; the non-root bones in the target bone group have a binding transformation relationship with their parent bones, and the root bone has no parent bone; If the first virtual bone is a non-root bone and supports inverse kinematics, the position of the first virtual bone is allowed to be adjusted; If the first virtual bone is a non-root bone and does not support inverse kinematics, adjusting the position of the first virtual bone is not allowed.
7. The method according to claim 6, characterized in that The method further comprises: If the first virtual bone is a non-root bone and supports inverse kinematics, in response to adjusting the position of the first virtual bone, the position of the parent bone of the first virtual bone is adjusted according to the position adjustment information of the first virtual bone.
8. The method according to claim 1, characterized in that In response to a first editing instruction for a first virtual bone in the target bone group, determining a key frame of the first virtual bone comprises: Providing a skeleton action track of the first virtual skeleton, wherein the skeleton action track is used to edit key frames of the first virtual skeleton on a first timeline; In response to an editing instruction for the skeleton action track of the first virtual skeleton, a key frame of the first virtual skeleton is determined.
9. The method according to claim 8, characterized in that The providing the skeleton action track of the first virtual skeleton includes: If the first virtual bone is the root bone in the target bone group, when entering the action editing interface, the bone action track of the first virtual bone is displayed.
10. The method according to claim 8, characterized in that The providing the skeleton action track of the first virtual skeleton includes: If the first virtual skeleton has at least one key frame, the skeleton motion track of the first virtual skeleton is displayed.
11. The method according to claim 8, characterized in that A movable first time mark is provided on the skeleton action track of the first virtual skeleton, for indicating the current editing time; The step of responding to the editing instruction of the skeleton action track of the first virtual skeleton and determining the key frame of the first virtual skeleton comprises: In response to an editing instruction for the skeleton action track of the first virtual skeleton, a key frame located at the current editing time is edited.
12. The method according to claim 11, characterized in that The step of responding to the editing instruction for the skeleton action track of the first virtual skeleton and editing the key frame at the current editing time comprises at least one of the following steps: When the skeleton action track is selected, responding to a key frame adding instruction, adding a key frame located at the current editing time to the skeleton action track; When the skeleton motion track is selected, responding to a key frame deletion instruction, the key frame in the skeleton motion track located at the current editing time is deleted; When the skeleton action track is selected, in response to a skeleton parameter adjustment instruction, a key frame in the skeleton action track located at the current editing time is updated according to the adjusted skeleton parameters.
13. The method according to claim 8, characterized in that The key frames of the first virtual skeleton are displayed on the skeleton action track of the first virtual skeleton; and the key frames of the first virtual skeleton are determined in response to the editing instruction for the skeleton action track of the first virtual skeleton, including: In response to a key frame movement instruction for the skeleton action track of the first virtual skeleton, the timing of the key frame of the first virtual skeleton is adjusted according to the key frame movement instruction.
14. The method according to claim 8, characterized in that The step of responding to the editing instruction of the skeleton action track of the first virtual skeleton and determining the key frame of the first virtual skeleton comprises: In response to a track deletion instruction for the skeleton action track of the first virtual skeleton, a key frame of the first virtual skeleton is deleted.
15. The method according to claim 8, characterized in that The method further comprises: Provide the global bone action track of the target bone group; In response to a third editing instruction for the global skeleton motion track, the skeleton motion track of each virtual skeleton is edited according to the third editing instruction.
16. The method according to claim 15, characterized in that The step of responding to the third editing instruction for the global skeleton action track and editing the skeleton action track of each virtual skeleton according to the third editing instruction comprises at least one of the following steps: In response to an instruction to select a first key frame in the global skeleton motion track, all key frames in the skeleton motion track of each virtual skeleton having the same time as the first key frame are used as current editing key frames; In response to an instruction to add a second key frame in the global skeleton action track, a key frame having the same time as the second key frame is added in the skeleton action track of each virtual skeleton; In response to an instruction to delete the third key frame in the global skeleton motion track, the key frame having the same time as the third key frame in the skeleton motion track of each virtual skeleton is deleted; In response to the instruction to copy the fourth key frame in the global skeleton motion track to generate the fifth key frame, the key frames with the same time as the fourth key frame in the skeleton motion track of each virtual skeleton are copied to the time of the fifth key frame.
17. The method according to claim 1, characterized in that The action editing interface includes a preview area; the method further includes: In response to the preview start instruction, a screen is displayed in the preview area for controlling the second virtual character model and / or the virtual skeleton model of the target skeleton group to perform actions according to the currently edited action data.
18. The method according to claim 17, characterized in that The method further comprises: In response to the full-screen preview instruction, the preview area is expanded to the entire action editing interface, and a bone selection control is displayed; the bone selection control is used to select the currently edited virtual bone from the virtual bones.
19. The method according to claim 17, characterized in that The method further comprises at least one of the following steps: In response to a trigger instruction of the first preview control, determining the second virtual character model for preview; In response to a trigger instruction for a second preview control, display or hide the second virtual character model in the preview area; In response to a trigger instruction for a third preview control, switching the second virtual character model displayed in the preview area between its original appearance and a customized appearance; the customized appearance is an appearance determined according to an appearance editing instruction pre-performed on the second virtual character model; In response to a triggering operation on a fourth preview control, the virtual skeleton model of the target skeleton group is displayed or hidden in the preview area.
20. The method according to claim 1, characterized in that The step of responding to the second editing instruction for the target bone group and determining the attachment object of the target bone group includes: In response to an instruction to add a mount object to the target skeleton group, a mount setting interface is displayed; In response to the setting instruction in the attachment setting interface, an attachment object is added to the target bone group according to the set attachment object information.
21. The method according to claim 20, characterized in that The attachment setting interface includes an attachment type selection interface and an attachment object setting interface; the response to the setting instruction in the attachment setting interface, adding an attachment object to the target bone group according to the set attachment object information, includes: In response to a selection instruction in the mount type selection interface, determining a target mount type from a plurality of candidate mount types; Display the mounting object setting interface corresponding to the target mounting type; In response to the setting instruction in the attachment object setting interface, an attachment object is added to the target bone group according to the set attachment object information.
22. The method according to claim 21, characterized in that If the target mounting type is a component mounting type, the mounting object information includes the mounting object identifier, effective time, and the mounting point corresponding to the mounting object; If the target mounting type is a special effect mounting type, the mounting object information includes the mounting object identifier, effective time, and the mounting point corresponding to the mounting object; If the target attachment type is a sound effect attachment type, the attachment object information includes an identification of the attachment object and an effective time.
23. The method according to claim 21, characterized in that The step of responding to the setting instruction in the setting interface of the attachment object and adding the attachment object to the target bone group according to the set attachment object information includes: In response to the attachment point setting instruction in the attachment object setting interface, the attachment point corresponding to the attachment object is determined from the attachment points of the target bone.
24. The method according to claim 21, characterized in that If the target attachment type is a component attachment type, the step of responding to the setting instruction in the attachment object setting interface and adding an attachment object to the target bone group according to the set attachment object information includes: In response to a first object selection instruction in the attachment object setting interface, displaying a game editing scene; the game editing scene includes one or more scene components; In response to a scene component selection instruction in the game editing scene, a target scene component is determined from the one or more scene components, and a hanging component model of the target skeleton group is determined according to model information of the target scene component; the hanging object of the target skeleton group includes the hanging component model.
25. The method according to claim 21, characterized in that The response adds an instruction to the attachment object of the target skeleton group and displays an attachment setting interface, including: In response to the mount track adding instruction, the mount setting interface is displayed; The method further comprises: In response to adding a mounting object to the target bone group, a mounting track of the mounting object is generated; the mounting track is used to edit the mounting object on the second timeline.
26. The method according to claim 25, characterized in that The step of responding to the second editing instruction for the target bone group and determining the attachment object of the target bone group further includes: In response to the editing instruction for the mounting track, the mounting object corresponding to the mounting track is updated.
27. The method according to claim 26, characterized in that The corresponding mounting object is displayed on the mounting track; and the response to the editing instruction for the mounting track and the updating of the mounting object corresponding to the mounting track include: In the case where at least one mounting object displayed on the mounting track is the currently edited mounting object, in response to the edit trigger instruction, a mounting object setting interface corresponding to the currently edited mounting object is displayed; In response to a setting instruction in the attachment object setting interface, the currently edited attachment object is updated according to the set attachment object information.
28. The method according to claim 26, characterized in that The mounting track is provided with a movable second time mark for indicating the effective time of the mounting object; The step of responding to the editing instruction for the mounting track and updating the mounting object corresponding to the mounting track includes: In response to the adjustment instruction for the second time identifier, the effective time of the attachment object is adjusted.
29. The method according to claim 1, characterized in that The method further comprises: In response to the first time setting instruction, the total duration of the target action is set; In response to the second time setting instruction, the time unit corresponding to the effective time of the key frame and / or the attachment object is set.
30. The method according to claim 1, characterized in that The method further comprises: In response to an editing instruction of the attachment points for the target skeleton group or the third virtual character model, a customized attachment point of the target skeleton group is determined; the third virtual character model is a virtual model based on the target skeleton group.
31. The method according to claim 1, characterized in that The step of generating the action data of the target action according to the key frame and the attachment object comprises: Determining a resource occupancy value of the target action according to the number of the key frames and the number of the attached objects; If the resource occupancy value does not exceed the action threshold, the action data of the target action is generated.
32. The method according to claim 1, characterized in that The step of displaying an action editing interface based on the target bone group in a graphical user interface comprises: Displaying a game editing scene in the graphical user interface; In response to an action editing trigger instruction in a game editing scene, control the game editing scene displayed in the graphical user interface to switch to the action editing interface; the action editing trigger instruction includes an instruction to select the target bone group from multiple candidate bone groups.
33. The method according to claim 32, characterized in that The method further comprises: In response to an action setting instruction for a virtual character component in a game editing scene, configuring the target action and the action execution condition corresponding to the target action for the virtual character component according to the action setting instruction; The responding triggering action execution condition, controlling the first virtual character model configured with the target action to execute the target action according to the action data, and presenting the attachment object at the effective time of the attachment object, comprises: During the game running stage, in response to triggering the action execution condition, the first virtual character model is controlled to execute the target action according to the action data, and the attachment object is presented at the effective time of the attachment object; the first virtual character model is a virtual model generated corresponding to the virtual character component during the game running stage.
34. A virtual action editing device, characterized in that: The device comprises: An interface display processing module is configured to display an action editing interface based on a target skeleton group in a graphical user interface; the target skeleton group includes a plurality of virtual skeletons; A first editing processing module is configured to determine a key frame of a first virtual bone in the target bone group in response to a first editing instruction for the first virtual bone; The second editing processing module is configured to respond to the second editing instruction for the target bone group and determine the attachment objects of the target bone group; wherein the target bone group has one or more attachment points, and the attachment points include attachment points determined according to the basic information of the target bone group and / or user-defined attachment points; at least part of the attachment objects of the target bone group have a relative transformation relationship with the corresponding attachment points; An action data generating module is configured to generate action data of a target action according to the key frame and the attachment object; The action execution processing module is configured to respond to the triggering action execution condition, control the first virtual character model configured with the target action to execute the target action according to the action data, and present the attachment object at the effective time of the attachment object; the first virtual character model is a virtual model based on the target skeleton group.
35. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 33 is implemented.
36. An electronic device, characterized in that: include: processor; A memory, configured to store executable instructions of the processor; Wherein, the processor is configured to perform the method of any one of claims 1 to 33 by executing the executable instructions.
