Virtual object action configuration method, apparatus, electronic device and storage medium

By matching intelligent agents and configuring parameters to correct the motion execution unit group of virtual objects, the difficulty of motion transfer in 3D virtual models is solved, realizing direct motion transfer and efficient utilization of virtual objects.

CN122134887APending Publication Date: 2026-06-02YIDIAN LINGXI INFORMATION TECHNOLOGY (GUANGZHOU) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
YIDIAN LINGXI INFORMATION TECHNOLOGY (GUANGZHOU) CO LTD
Filing Date
2026-01-14
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

In existing technologies, the differences in the motion joints of 3D virtual models make it difficult to directly transfer movements to the target virtual model, thus affecting the utilization rate of the virtual model.

Method used

The intelligent agent determines the motion execution unit group of the target virtual object, matches the first motion model and mapping unit group in the pre-set motion model library, and uses configuration parameters to correct the motion execution unit group to achieve direct motion transfer.

Benefits of technology

This reduces the drifting or sliding of virtual objects when performing actions, improves the utilization rate of virtual objects, and ensures that actions can be directly transferred to the target virtual object.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122134887A_ABST
    Figure CN122134887A_ABST
Patent Text Reader

Abstract

This disclosure relates to a method, apparatus, electronic device, and storage medium for configuring virtual object actions, belonging to the technical field of virtual model processing. The method includes: acquiring action material of a target virtual object output by a user; invoking an intelligent agent to determine a group of motion execution units reflecting the motion relationship chain of the target virtual object in the action material; determining a first motion model matching the motion execution unit group and a mapping unit group mapped by the motion execution unit group on the first motion model in a preset motion model library; and modifying the motion execution unit group relative to the mapping unit group according to the configuration parameters of the action indication output by the user on the mapping unit group to obtain the modified motion execution unit group.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the technical field of virtual model processing, and more specifically, to a method, apparatus, electronic device, and storage medium for configuring virtual object actions. Background Technology

[0002] With the widespread application of 3D virtual models, they are used to build virtual scenes, create animations, or construct virtual digital humans. To enable the reuse of virtual models, they can be stored in a model library. However, when a virtual model in the library needs to perform certain actions, the differences in the motion joints of that virtual model make it difficult to directly transfer actions to that virtual model. Summary of the Invention

[0003] One objective of this disclosure is to provide a new technical solution for configuring virtual object actions.

[0004] According to a first aspect of this disclosure, a method for configuring virtual object actions is provided, the method comprising: Obtain the motion assets of the target virtual object output by the user; Invoke the intelligent agent to determine the motion execution unit group in the motion material that reflects the motion relationship chain of the target virtual object; In a pre-set motion model library, determine the first motion model matched by the motion execution unit group and the mapping unit group that the motion execution unit group maps onto the first motion model; Based on the configuration parameters of the user-output action instructions on the mapping unit group, the motion execution unit group is modified relative to the mapping unit group to obtain the modified motion execution unit group.

[0005] Optionally, the step of adjusting the motion execution unit group relative to the mapping unit group based on the configuration parameters of the user-output motion indication on the mapping unit group to obtain the adjusted motion execution unit group includes: Based on the configuration parameters of the user-output motion instruction on the mapping unit group, determine the first rotation parameter of the motion execution unit group in the target frame; Based on the position information of the first motion execution unit in the target frame and the first rotation parameter, the first motion trajectory of the first motion execution unit in the action instruction is determined; The first motion trajectory is fitted with the second motion trajectory set by the first mapping unit in the mapping unit group to obtain the fitting parameters of the motion execution unit group; Based on the fitting parameters, the position of the motion execution unit group in the action instruction is corrected, and the corrected motion execution unit group is obtained.

[0006] Optionally, the method further includes: Determine the first feature information of the motion execution unit group under the reference posture and the second feature information of the mapping unit group under the reference posture; Based on the first feature information and the second feature information, determine the action redirection parameters of the motion execution unit group; The step of determining the first rotation parameters of the motion execution unit group in the target frame based on the configuration parameters of the user-output motion indication on the mapping unit group includes: Based on the motion redirection parameters and the configuration parameters of the user-output motion indication on the mapping unit group, the first rotation parameters of the motion execution unit group in the target frame are determined.

[0007] Optionally, determining the action redirection parameters of the motion execution unit group based on the first feature information and the second feature information includes: Based on the first feature information and the second feature information, determine the alignment angle of the motion execution unit group relative to the mapping unit group; Based on the first feature information, determine the first relative direction between the second motion execution unit in the motion execution unit group and the reference portion set by the target virtual object; Based on the second feature information, determine the second relative direction between the second mapping unit in the mapping unit group and the reference portion set by the first motion model; The alignment matrix of the motion execution unit group relative to the mapping unit group is determined by the first relative direction, the second relative direction, and the alignment angle; Based on the second rotation parameters set by the second mapping unit and the alignment matrix, the third rotation parameters of the second motion execution unit are determined as the action redirection parameters of the motion execution unit group.

[0008] Optionally, fitting the first motion trajectory with the second motion trajectory set by the first mapping unit in the mapping unit group to obtain the fitting parameters of the motion execution unit group includes: The first motion trajectory and the second motion trajectory set by the first mapping unit in the mapping unit group are input into a preset fitting algorithm to obtain the scaling factor and translation factor of the first motion execution unit, which are used as fitting parameters of the motion execution unit group.

[0009] Optionally, the step of correcting the position of the motion execution unit group in the action instruction according to the fitting parameters, and obtaining the corrected motion execution unit group, includes: The displacement parameters of the third motion execution unit are determined based on the position of the third motion execution unit in the motion execution unit group, the position of the second mapping unit in the mapping unit group in the motion instruction, and the fitting parameters. Based on the displacement parameters, the position of the first motion execution unit in the action instruction is corrected, and the corrected motion execution unit group is obtained.

[0010] Optionally, the motion relationship chain of the target virtual object includes the inter-unit relationship chain of the fourth motion execution unit in the motion execution unit group; the method further includes: If the motion execution unit group cannot be matched with any motion model in the motion model library, the agent is invoked to construct a second motion model based on the relationship chain between the units. Update the second motion model to the motion model library.

[0011] According to a second aspect of this disclosure, a virtual object action configuration device is also provided, the device comprising: The acquisition module is used to acquire motion assets of the target virtual object output by the user; The calling module is used to call the intelligent agent to determine the motion execution unit group in the motion material that reflects the motion relationship chain of the target virtual object; The determination module is used to determine, in a preset motion model library, the first motion model matched by the motion execution unit group and the mapping unit group mapped by the motion execution unit group on the first motion model; The module is configured to modify the motion execution unit group relative to the mapping unit group based on the configuration parameters of the user-output motion indication on the mapping unit group, thereby obtaining the modified motion execution unit group.

[0012] According to a third aspect of this disclosure, a computer system is also provided, the computer system including a processor, which implements the virtual object action configuration method of the first aspect when the processor executes program instructions or code.

[0013] For example, the computer system also includes a memory for storing program instructions or code.

[0014] According to a fourth aspect of this disclosure, a computer-readable storage medium is also provided, wherein a computer program is stored therein, wherein the computer program is configured to execute the above-described virtual object action configuration method at runtime.

[0015] According to a fifth aspect of this disclosure, a computer program product is also provided, comprising a computer program that, when executed, causes a computer to perform the steps of the virtual object action configuration method described above.

[0016] According to a sixth aspect of this disclosure, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to execute the virtual object action configuration method through the computer program.

[0017] One beneficial effect of this disclosure is that the virtual object action configuration method provided by the present invention can determine the motion execution unit of the target virtual object through an intelligent agent, and then determine the first motion model matching the motion execution unit group and the mapping unit group mapped by the first motion model through a motion model library. By configuring the mapping unit under the action instruction, the motion execution unit group is modified to obtain the modified motion execution unit, thereby reducing the occurrence of virtual object drifting or sliding when executing the action instruction, so that the action can be directly transferred to the virtual object, improving the utilization rate of the virtual object.

[0018] Other features and advantages of the embodiments of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0019] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the present disclosure and, together with their description, serve to explain the principles of the embodiments of the present disclosure.

[0020] Figure 1 A schematic diagram of the hardware structure of an electronic device that can be used to implement a virtual object action configuration method according to embodiments of the present disclosure is shown. Figure 2 A flowchart illustrating a virtual object action configuration method according to some embodiments is shown; Figure 3 A schematic diagram of the structure of a virtual object action configuration device according to some embodiments is shown; Figure 4 A schematic diagram of the hardware structure of an electronic device according to some embodiments is shown. Detailed Implementation

[0021] Various exemplary embodiments of this specification will now be described in detail with reference to the accompanying drawings.

[0022] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the embodiments of this specification or their application or use.

[0023] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0024] It should be noted that all actions involving the acquisition of signals, information, or data in this embodiment are carried out in compliance with the relevant data protection laws and regulations of the country where the location is situated, and with authorization from the owner of the relevant equipment.

[0025] This disclosure provides a novel virtual object action configuration scheme, which allows a user to output a virtual object for which actions need to be configured, matches a motion model to the virtual object, statically aligns the virtual object with the motion model and corrects the actions, so that actions on the motion model can be configured on the virtual object, and actions can be directly transferred to the virtual object, thereby improving the utilization rate of the virtual object.

[0026] Figure 1 A schematic diagram of the hardware structure of an electronic device that can be used to implement virtual object action configuration according to embodiments of the present disclosure is shown.

[0027] The electronic device 1000 is a device capable of running computer programs. These programs can be local applications installed on the electronic device, or web applications, lightweight applications, or mini-programs, etc., without limitation. The electronic device 1000 can be a mobile phone, tablet computer, PC, etc., without limitation.

[0028] like Figure 1 As shown, the electronic device 1000 may include a processor 1101, a memory 1102, an interface device 1103, a communication device 1104, an output device 1105, an input device 1106, etc. Figure 1 The hardware configuration shown is illustrative only and is not intended to limit this disclosure, its application, or its use.

[0029] The processor 1101 executes computer programs, which can be written using instruction sets of architectures such as x86, Arm, RISC, MIPS, and SSE. The memory 1102 includes, for example, ROM (Read-Only Memory), RAM (Random Access Memory), and non-volatile memory such as a hard disk. The interface device 1103 includes, for example, a USB interface, a network cable interface, and a headphone jack. The communication device 1104 is capable of wired or wireless communication. The communication device 1104 may include at least one short-range communication module, such as any module for short-range wireless communication based on short-range wireless communication protocols such as Hilink, WiFi (IEEE 802.11), Mesh, Bluetooth, ZigBee, Thread, Z-Wave, NFC, UWB, and LiFi. The communication device 1104 may also include a long-range communication module, such as any module for WLAN, GPRS, or 2G / 3G / 4G / 5G long-range communication. The output device 1105 may include, for example, an LCD screen or touch screen, and a speaker. Input device 1106 may include, for example, a touch screen, a keyboard, a microphone, various sensors, etc.

[0030] In this embodiment, the memory 1102 of the electronic device 1000 is used to store a computer program that controls the processor 1101 to perform a virtual object action configuration method according to any embodiment of the present disclosure.

[0031] Next, as Figure 1 Using an electronic device 1000 as an example, various embodiments of the computer program update method are explained.

[0032] <First Embodiment> Figure 2 A virtual object action configuration method according to some embodiments is shown, which may include the following steps S210 to S240: Step S210: Obtain the motion assets of the target virtual object output by the user.

[0033] In this embodiment, the target virtual object can be an animal model, plant model, or human model, etc., and is not limited thereto. The motion assets of the target virtual object can be a two-dimensional model or a three-dimensional model of the target virtual object, etc., and are not limited thereto.

[0034] Step S220: Invoke the intelligent agent to determine the motion execution unit group in the motion material that reflects the motion relationship chain of the target virtual object.

[0035] In this embodiment, the motion execution unit group of the target virtual object includes a connection point that drives the movement of a movable part of the target virtual object. This movable part can rotate around the connection point as a center of rotation, or it can extend or retract from the connection point as a starting point. For example, if the target virtual object is a human model or an animal model, the motion execution unit can be the joints of the human model. As another example, if the target virtual object is a plant model, the motion execution unit can be a branch, trunk, or leaf base of the plant model. The following description uses a human model as an example to illustrate the target virtual object.

[0036] In this embodiment, the intelligent agent can be an artificial intelligence model, such as a Large Language Model (LLM). This LLM can identify the joints of the target virtual object and the skeletal chains involved in each joint. The skeletal chains include left and right arm chains, left and right leg chains, spinal chains, finger chains, left and right foot chains, etc. Here, the skeletal chain is the motion relationship chain, and the motion execution unit group is the joint on the skeletal chain of the target virtual object.

[0037] Step S220: In the preset motion model library, determine the first motion model matched by the motion execution unit group and the mapping unit group mapped by the motion execution unit group on the first motion model.

[0038] In this embodiment, the motion model library can be highly compatible, and different skeleton models can establish a mapping relationship with the standard skeleton model to construct motion models that can be used as templates in the motion model library.

[0039] In this embodiment, the motion execution unit group of the target virtual object matches all motion models in the motion model library one by one based on the list of required bone names set in the motion model library. The motion model with the highest matching degree is selected as the first motion model, and a mapping unit group is obtained in the motion execution unit group that maps to the first motion model. For example, the motion execution unit corresponding to the left hand in the motion execution unit group has a mapping relationship with the mapping unit corresponding to the left hand in the mapping unit group.

[0040] Step S230: Based on the configuration parameters of the user-output motion instruction on the mapping unit group, the motion execution unit group is modified relative to the mapping unit group to obtain the modified motion execution unit group.

[0041] In this embodiment, the user-output action instruction can be a continuous action corresponding to a time period. For example, this continuous action is left arm raised horizontally and then left arm raised 60°. Accordingly, the configuration parameters are the transition from the left arm raised horizontally position to the left arm raised 60° position corresponding to each mapping unit on the left arm in the mapping unit group. Through the above configuration parameters, each motion execution unit in the motion execution unit group corresponding to the left arm can be aligned with each mapping unit on the left arm in the mapping unit group, so that the motion execution unit group is corrected relative to the mapping unit group, thereby obtaining a corrected motion execution unit group, so that the target virtual object can smoothly execute the action instruction.

[0042] Step S240: Send the corrected motion execution unit group to the user.

[0043] In this embodiment, after the user receives the modified motion execution unit group, the user can be shown an instruction for the target virtual object to perform the action.

[0044] The virtual object action configuration method according to the first embodiment of the present invention solves the problem that when a virtual model in a motion model library needs to perform certain actions, it is difficult to directly transfer the actions to the virtual model due to the differences in the motion joints of the virtual model. Based on this method, an intelligent agent determines the motion execution unit of the target virtual object, and then, by setting a motion model library, a first motion model matching the motion execution unit group and a mapping unit group mapped by the first motion model on the first motion model are determined. By using the configuration parameters of the mapping unit under the action instruction, the motion execution unit group is modified to obtain the modified motion execution unit, thereby reducing the occurrence of drift or sliding when the virtual object executes the action instruction, enabling the actions to be directly transferred to the virtual object, and improving the utilization rate of the virtual object.

[0045] <Second Embodiment> In this embodiment, in order to enable the motion execution unit group of the virtual object to perform motion correction relative to the mapping unit group, the motion end of the virtual object is first aligned with the corresponding motion end of the first motion model, and then the overall posture of the virtual object is optimized to reduce the occurrence of clipping when the virtual object performs the action.

[0046] In these embodiments, relative to the first embodiment described above, step S230 may include the following steps S310 and S340: Step S310: Determine the first rotation parameters of the motion execution unit group in the target frame based on the configuration parameters of the motion instruction output by the user on the mapping unit group.

[0047] In this embodiment, the action indication is a connected action over a time period, which may include multiple time nodes. The target frame may correspond to one of the multiple time nodes. By configuring the position of the mapping unit group at the target time node as reflected in the parameters, the position of the motion execution unit group at the target time node can be determined, that is, the first rotation parameters of each motion execution unit in the motion execution unit group in the target frame.

[0048] Step S320: Determine the first motion trajectory of the first motion execution unit in the action instruction based on the position information of the first motion execution unit in the target frame and the first rotation parameter in the motion execution unit group.

[0049] In this embodiment, the first motion execution unit can be a motion execution unit corresponding to the motion end of the target virtual character, where the motion end can include the feet and toes of the target virtual character. By setting a locator for the first motion execution unit, the motion trajectory of the locator in the action instruction can be obtained, i.e., the first motion trajectory.

[0050] Step S330: Fit the first motion trajectory with the second motion trajectory set by the first mapping unit in the mapping unit group to obtain the fitting parameters of the motion execution unit group.

[0051] In this embodiment, the first mapping unit in the mapping unit group can be a mapping unit corresponding to the motion end of the first motion model. Here, the motion end can include the foot and toes of the first motion model, and the second motion trajectory of the first mapping unit is preset. By linearly fitting the first motion trajectory and the second motion trajectory, the trajectory offset of the first motion trajectory relative to the second motion trajectory can be obtained, which can be used as the fitting parameter of the motion execution unit group.

[0052] Step S340: Based on the fitting parameters, correct the position of the motion execution unit group in the action instruction, and obtain the corrected motion execution unit group.

[0053] In this embodiment, the fitting parameters can be used to align virtual objects with different bone lengths from the first motion model, effectively reducing the occurrence of deviations in the end-effector movements of virtual objects caused by simply adjusting their rotation angles.

[0054] <Third Embodiment> In this embodiment, in order to configure actions for virtual objects under different postures, the virtual object can be aligned with the first motion model under a reference posture, and the action redirection parameters of the virtual object can be obtained. Through the action redirection parameters, the static posture of the virtual object can be aligned with the static posture of the first motion model.

[0055] In these embodiments, relative to the second embodiment described above, the method further includes the following steps S410 and S420 before step S310: Step S410: Determine the first feature information of the motion execution unit group under the reference pose and the second feature information of the mapping unit group under the reference pose.

[0056] In this embodiment, the reference pose can be a pre-defined pose, such as Apose or Tpose. The first feature information here is the position of each motion execution unit in the motion execution unit group under the reference pose, and the second feature information is the position of each mapping unit in the mapping unit group under the reference pose.

[0057] Step S420: Determine the motion redirection parameters of the motion execution unit group based on the first feature information and the second feature information.

[0058] In this embodiment, the motion redirection parameters of the motion execution unit group can be determined by the first feature information and the second feature information, so as to align the position of each motion execution unit with the corresponding mapping unit.

[0059] Based on this, step S310 may include the following step S430: Step S430: Determine the first rotation parameters of the motion execution unit group in the target frame based on the motion redirection parameters and the configuration parameters of the motion indication output by the user on the mapping unit group.

[0060] In this embodiment, taking the reference pose Tpose as an example, the expression for the first rotation parameter R_t is determined as follows: R_t=inverse(T_t)*T_s*R_s*inverse(T_s)*T_t Where T_t is the rotation of the motion execution unit group in the Tpose state, T_s is the rotation of the mapping unit group in the Tpose state, and R_s is the rotation of the mapping unit in the target frame, so as to cancel out the difference between the motion execution unit group and the mapping unit group in the Tpose state and pass the rotation of the mapping unit group to the motion execution unit group.

[0061] In some examples, when the initial pose of the motion execution unit group of the target virtual object is not zero, it is necessary to supplement the corresponding pre-rotation value. The expression for the supplemented pre-rotation value is as follows: R_t = pre_rotation * R_t Where R_t represents the first rotation parameter and pre_rotation represents the pre-rotation value.

[0062] In this embodiment, after determining the first rotation parameter, a pre-rotation value is added to the motion execution unit group, thereby enabling the configuration of actions for virtual objects under different postures.

[0063] <Fourth Embodiment> In this embodiment, in order to obtain the motion redirection parameters, the angle between the virtual object and a reference portion set by the virtual object and the angle between the first motion model and a reference portion set by the first motion model are determined. Through the two angles, an alignment matrix can be determined to rotate the virtual object to align with the first motion model.

[0064] In these embodiments, relative to the third embodiment described above, step S420 may include the following steps S510 and S550: Step S510: Determine the alignment angle of the motion execution unit group relative to the mapping unit group based on the first feature information and the second feature information.

[0065] In this embodiment, based on the first feature information and the second feature information, it can be determined whether the initial pose of the motion execution unit group of the target virtual object is non-zero. If the initial pose of the motion execution unit group of the target virtual object is non-zero, the pre-rotation value of the motion execution unit group relative to the mapping unit group can be determined as the alignment angle.

[0066] Step S520: Based on the first feature information, determine the first relative direction between the second motion execution unit in the motion execution unit group and the reference portion set by the target virtual object.

[0067] In this embodiment, the second motion execution unit can be any of the motion execution units corresponding to the arm in the motion execution unit group, and the expression for the first relative direction dirS is as follows: dirS=posSend-posSstart Where posSend represents the position of the motion execution unit corresponding to the shoulder in the motion execution unit group, and posSstart represents the position of the motion execution unit corresponding to the palm in the motion execution unit group.

[0068] Step S530: Based on the second feature information, determine the second relative direction between the second mapping unit in the mapping unit group and the reference part set by the first motion model.

[0069] In this embodiment, the second mapping unit can be each mapping unit corresponding to the arm in the mapping unit group, and the expression for the second relative direction dirT is as follows: dirT=posTend-posTstart Where posTend represents the position of the mapping unit corresponding to the shoulder in the mapping unit group, and posTstart represents the position of the mapping unit corresponding to the palm in the mapping unit group.

[0070] Step S540: Determine the alignment matrix of the motion execution unit group relative to the mapping unit group using the first relative direction, the second relative direction, and the alignment angle.

[0071] In this embodiment, the expression for the alignment matrix dR is as follows: aa = cross(dirS, dirT) dR=angleAxis(|aa|, normalize(aa)) Where aa represents the rotation axis, dirS represents the first relative direction, and dirT represents the second relative direction.

[0072] Step S550: Based on the second rotation parameters and alignment matrix set by the second mapping unit, determine the third rotation parameters of the second motion execution unit as the motion redirection parameters of the motion execution unit group.

[0073] In this embodiment, the motion redirection parameter can be the rotation value rots[frame] of the motion execution unit group in the motion instruction. The expression for the rotation value rots[frame] is as follows: new_prerot=inverse(T)*dR*T*old_prerot rots[frame]=inverse(new_prerot)*old_prerot*rots[frame] Where T represents the rotation of the target virtual object at the initial pose of the motion execution unit group, old_prerot represents the original prerotation value, and new_prerot represents the new prerotation value.

[0074] In this embodiment, the alignment of the target virtual object and the first motion model arm is achieved by adding the rotation angle corresponding to the alignment matrix to the alignment angle of the arm bone. At the same time, the rotation value of the entire action executed by the motion execution unit group of the target virtual object is also updated sequentially to achieve the action redirection of the target virtual object.

[0075] <Fifth Embodiment> In this embodiment, in order to align the motion end of the virtual object with the corresponding motion end of the first motion model, the first motion trajectory and the second motion trajectory can be fitted using a fitting algorithm to obtain fitting parameters that can adjust the motion root of the virtual object.

[0076] In these embodiments, relative to the second embodiment described above, step S330 may include the following step S610: Step S610: Input the first motion trajectory and the second motion trajectory set by the first mapping unit in the mapping unit group into the preset fitting algorithm to obtain the scaling factor and translation factor of the first motion execution unit, which are used as fitting parameters of the motion execution unit group.

[0077] In this embodiment, a correction locator is provided on the motion execution unit corresponding to the motion end point in the motion execution unit. Here, the motion end point can be the left and right feet and the left and right toes. Through iterative calculation using the locator, the trajectory curve of the first motion trajectory of these locators can be obtained. The expression of the trajectory curve of the first motion trajectory is as follows: Lbone = Lfather * Rbone + Tbone Where Lbone represents the position of the motion execution unit corresponding to the end effector in the motion execution unit group, Lfather represents the position of the parent unit of the motion execution unit corresponding to the end effector in the motion execution unit group, Rbone represents the rotation value of the motion execution unit corresponding to the end effector in the motion execution unit group, and Tbone represents the translation value of the motion execution unit corresponding to the end effector in the motion execution unit group. When the end effector is the foot, the parent unit of the motion execution unit of the end effector is, for example, the motion execution unit corresponding to the lower leg joint.

[0078] In this embodiment, the trajectory curves of the second motion trajectory and the first motion trajectory set by the first mapping unit in the mapping unit group are fitted using the piecewise least squares method. The specific fitting algorithm expression is as follows: T[i][c]=λ[c]·X[i][c]+α[c] Where T[i][c] represents the position of the motion execution unit group on the c-axis in frame i, and c can take values ​​of (0, 1, 2) and correspond to the X, Y, and Z axes respectively. λ[c] represents the scaling factor, X[i][c] represents the position of the mapping unit group on the c-axis in frame i, and α[c] represents the translation factor.

[0079] In this embodiment, by using scaling and translation factors, virtual objects of different lengths from the skeleton of the first motion model can be aligned, effectively reducing the occurrence of deviations in the end-effector movements of virtual objects caused by simply adjusting their rotation angle.

[0080] <Sixth Embodiment> In this embodiment, in order to improve the coordination of the virtual object in the process of performing actions, the position of the virtual object's root motion is corrected by the fitting parameters of the virtual object's root motion, provided that the virtual object's end motion is aligned with the corresponding end motion of the first motion model.

[0081] In these embodiments, relative to the second or fifth embodiment described above, step S340 may include the following steps S710 and S720: Step S710: Determine the displacement parameters of the third motion execution unit based on the position of the third motion execution unit in the motion instruction, the position of the second mapping unit in the mapping unit group in the motion instruction, and the fitting parameters.

[0082] In this embodiment, after obtaining the scaling factor and translation factor, the position Thip of the third motion execution unit in the action instruction can be determined by averaging the position values ​​of the positioners of the motion execution units corresponding to the left and right feet and the left and right toes in the four motion execution unit groups. That is, the displacement parameter of the third motion execution unit, the expression of the position Thip is as follows: Thip=AVG(posAnim[src_l]*scale[tar_l]+trans[tar_l]-posAnim[tar_l]+posTpose[tar_hip]) In this context, posAnim[src_l] represents the position of the second mapping unit in the mapping unit group within the action indication, posAnim[tar_l] represents the position of the third motion execution unit in the motion execution unit group within the action indication, posTpose[tar_hip] represents the position of the third motion execution unit in the motion execution unit group at the initial pose, scale represents the scaling factor, and trans represents the translation factor. Here, the third motion execution unit can be the motion execution unit corresponding to the motion root in the motion execution unit group, such as the pelvis.

[0083] Step S720: Based on the displacement parameters, correct the position of the first motion execution unit in the action instruction, and obtain the corrected motion execution unit group.

[0084] In this embodiment, the mapping unit corresponding to the toe in the mapping unit group is taken as the target. Inverse Kinematics Iteration (IK iteration) is performed on the corresponding leg bone chain motion execution unit in the motion execution unit group to correct the rotation of the leg bone chain motion execution units, thereby achieving a normal correction of the target virtual character's foot position, and thus obtaining the corrected motion execution unit group. This normal correction of the target virtual character's foot position can be achieved using a Cyclic Coordinate Descent (CCD) algorithm.

[0085] <Seventh Embodiment> In this embodiment, in order to further improve the versatility of the motion model library, when a virtual object does not match any motion model in the motion model library, the motion relationship chain of the target virtual object includes the inter-unit relationship chain of the fourth motion execution unit in the motion execution unit group. A new motion model can be constructed through the motion execution unit group of the virtual object, and the motion model can be updated to the motion model library.

[0086] In these embodiments, relative to the first embodiment described above, after step S210, the method further includes the following steps S810 and S820: In step S810, if the motion execution unit group cannot be matched with any motion model in the motion model library, the agent is invoked to construct a second motion model based on the relationship chain between units.

[0087] In this embodiment, if the motion execution unit group cannot match any motion model in the motion model library, intelligent recognition is performed by an intelligent agent, namely a Large Language Model (LLM), and the skeletal chain of the fourth motion execution unit in the motion execution unit group, namely the inter-unit association chain, is obtained by recognizing the rule prompt and the output format.

[0088] In this embodiment, the second motion model is constructed by mapping the inter-unit relationship chain to the standard skeleton model one by one.

[0089] Step S830: Update the second motion model to the motion model library.

[0090] In this embodiment, after the second motion model is constructed, it can be stored as a template model in the motion model library.

[0091] <Device Embodiment> Figure 3 A schematic diagram illustrating the composition of a virtual object action configuration device according to an embodiment of the present disclosure is shown. Figure 3 As shown, the virtual object action configuration device 300 includes an acquisition module 310, a calling module 320, a determining module 330, and a obtaining module 340.

[0092] The acquisition module 310 is used to acquire motion materials of the target virtual object output by the user; The calling module 320 is used to call the intelligent agent to determine the motion execution unit group in the motion material that reflects the motion relationship chain of the target virtual object; The determining module 330 is used to determine, in a preset motion model library, the first motion model matched by the motion execution unit group and the mapping unit group mapped on the first motion model; The module 340 is used to modify the motion execution unit group relative to the mapping unit group according to the configuration parameters of the motion instruction output by the user on the mapping unit group, so as to obtain the modified motion execution unit group.

[0093] In some embodiments, the obtaining module 340 is further configured to: determine a first rotation parameter of the motion execution unit group in the target frame based on the configuration parameters of the motion instruction output by the user on the mapping unit group; determine a first motion trajectory of the first motion execution unit in the motion instruction based on the position information of the first motion execution unit in the target frame and the first rotation parameter; fit the first motion trajectory with the second motion trajectory set by the first mapping unit in the mapping unit group to obtain fitting parameters of the motion execution unit group; and correct the position of the motion execution unit group in the motion instruction based on the fitting parameters to obtain the corrected motion execution unit group.

[0094] In some embodiments, the virtual object action configuration device further includes a parameter determination module, which is used to determine first feature information of the motion execution unit group under a reference posture and second feature information of the mapping unit group under the reference posture; and to determine action redirection parameters of the motion execution unit group based on the first feature information and the second feature information. The module 340 is also used to determine the first rotation parameters of the motion execution unit group in the target frame based on the motion redirection parameters and the configuration parameters of the motion indication output by the user on the mapping unit group.

[0095] In some embodiments, the parameter determination module is further configured to: determine the alignment angle of the motion execution unit group relative to the mapping unit group based on the first feature information and the second feature information; determine the first relative direction between the second motion execution unit in the motion execution unit group and the reference portion set by the target virtual object based on the first feature information; determine the second relative direction between the second mapping unit in the mapping unit group and the reference portion set by the first motion model based on the second feature information; determine the alignment matrix of the motion execution unit group relative to the mapping unit group using the first relative direction, the second relative direction, and the alignment angle; and determine the third rotation parameter of the second motion execution unit based on the second rotation parameter set by the second mapping unit and the alignment matrix, as the motion redirection parameter of the motion execution unit group.

[0096] In some embodiments, the obtaining module 340 is further configured to input the first motion trajectory and the second motion trajectory set by the first mapping unit in the mapping unit group into a preset fitting algorithm to obtain the scaling factor and translation factor of the first motion execution unit as fitting parameters of the motion execution unit group.

[0097] In some embodiments, the obtaining module 340 is further configured to determine the displacement parameters of the third motion execution unit based on the position of the third motion execution unit in the motion execution unit group in the motion indication, the position of the second mapping unit in the mapping unit group in the motion indication, and the fitting parameters; and to correct the position of the first motion execution unit in the motion indication based on the displacement parameters, thereby obtaining the corrected motion execution unit group.

[0098] In some embodiments, the virtual object action configuration device further includes an update module, which is used to invoke an agent to construct a second motion model based on the inter-unit relationship chain when the motion execution unit group cannot match any motion model in the motion model library; and update the second motion model to the motion model library.

[0099] <Equipment Example> Figure 4 A schematic diagram of the hardware structure of an electronic device according to some other embodiments is shown. For example... Figure 4 As shown, the electronic device 400 includes a processor 410 and a memory 420. The memory 420 stores a computer program that controls the processor 410 to operate in order to control the electronic device 400 to execute a virtual object action configuration method according to any embodiment of the present disclosure.

[0100] This disclosure also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements a virtual object action configuration method according to any embodiment of this disclosure.

[0101] This disclosure also provides a computer program product, which includes a computer program or instructions that, when executed by a processor, implement a virtual object action configuration method according to any of the disclosed embodiments.

[0102] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device and apparatus embodiments are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0103] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0104] Embodiments of this specification may be devices, methods, and / or computer program products. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement various aspects of the embodiments of this specification.

[0105] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination of the foregoing. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0106] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0107] Computer program instructions used to perform the operations of the embodiments described herein may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or first code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the first user's computer, partially on the first user's computer, as a standalone software package, partially on the first user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the first user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing state information from the computer-readable program instructions. This electronic circuitry can execute the computer-readable program instructions to implement various aspects of the embodiments described herein.

[0108] Various aspects of embodiments of this specification are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of this specification. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0109] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0110] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0111] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this specification. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions. It will be well known to those skilled in the art that implementation in hardware, implementation in software, and implementation using a combination of software and hardware are equivalent.

[0112] Various embodiments of this specification have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for configuring actions for a virtual object, characterized in that, The method includes: Obtain the motion assets of the target virtual object output by the user; Invoke the intelligent agent to determine the motion execution unit group in the motion material that reflects the motion relationship chain of the target virtual object; In a pre-set motion model library, determine the first motion model matched by the motion execution unit group and the mapping unit group that the motion execution unit group maps onto the first motion model; Based on the configuration parameters of the user-output action instructions on the mapping unit group, the motion execution unit group is modified relative to the mapping unit group to obtain the modified motion execution unit group.

2. The method according to claim 1, characterized in that, The step of adjusting the motion execution unit group relative to the mapping unit group based on the configuration parameters of the user-output action instruction on the mapping unit group to obtain the adjusted motion execution unit group includes: Based on the configuration parameters of the user-output motion instruction on the mapping unit group, determine the first rotation parameter of the motion execution unit group in the target frame; Based on the position information of the first motion execution unit in the target frame and the first rotation parameter, the first motion trajectory of the first motion execution unit in the action instruction is determined; The first motion trajectory is fitted with the second motion trajectory set by the first mapping unit in the mapping unit group to obtain the fitting parameters of the motion execution unit group; Based on the fitting parameters, the position of the motion execution unit group in the action instruction is corrected, and the corrected motion execution unit group is obtained.

3. The method according to claim 2, characterized in that, The method further includes: Determine the first feature information of the motion execution unit group under the reference posture and the second feature information of the mapping unit group under the reference posture; Based on the first feature information and the second feature information, determine the action redirection parameters of the motion execution unit group; The step of determining the first rotation parameters of the motion execution unit group in the target frame based on the configuration parameters of the user-output motion indication on the mapping unit group includes: Based on the motion redirection parameters and the configuration parameters of the user-output motion indication on the mapping unit group, the first rotation parameters of the motion execution unit group in the target frame are determined.

4. The method according to claim 3, characterized in that, Determining the action redirection parameters of the motion execution unit group based on the first feature information and the second feature information includes: Based on the first feature information and the second feature information, determine the alignment angle of the motion execution unit group relative to the mapping unit group; Based on the first feature information, determine the first relative direction between the second motion execution unit in the motion execution unit group and the reference portion set by the target virtual object; Based on the second feature information, determine the second relative direction between the second mapping unit in the mapping unit group and the reference portion set by the first motion model; The alignment matrix of the motion execution unit group relative to the mapping unit group is determined by the first relative direction, the second relative direction, and the alignment angle; Based on the second rotation parameters set by the second mapping unit and the alignment matrix, the third rotation parameters of the second motion execution unit are determined as the action redirection parameters of the motion execution unit group.

5. The method according to claim 2, characterized in that, The step of fitting the first motion trajectory with the second motion trajectory set by the first mapping unit in the mapping unit group to obtain the fitting parameters of the motion execution unit group includes: The first motion trajectory and the second motion trajectory set by the first mapping unit in the mapping unit group are input into a preset fitting algorithm to obtain the scaling factor and translation factor of the first motion execution unit, which are used as fitting parameters of the motion execution unit group.

6. The method according to claim 2 or 5, characterized in that, The step of correcting the position of the motion execution unit group in the action instruction according to the fitting parameters, and obtaining the corrected motion execution unit group, includes: The displacement parameters of the third motion execution unit are determined based on the position of the third motion execution unit in the motion execution unit group, the position of the second mapping unit in the mapping unit group in the motion instruction, and the fitting parameters. Based on the displacement parameters, the position of the first motion execution unit in the action instruction is corrected, and the corrected motion execution unit group is obtained.

7. The method according to claim 1, characterized in that, The motion relationship chain of the target virtual object includes the inter-unit relationship chain of the fourth motion execution unit in the motion execution unit group; the method further includes: If the motion execution unit group cannot be matched with any motion model in the motion model library, the agent is invoked to construct a second motion model based on the relationship chain between the units. Update the second motion model to the motion model library.

8. A virtual object action configuration device, characterized in that, The device includes: The acquisition module is used to acquire motion assets of the target virtual object output by the user; The calling module is used to call the intelligent agent to determine the motion execution unit group in the motion material that reflects the motion relationship chain of the target virtual object; The determination module is used to determine, in a preset motion model library, the first motion model matched by the motion execution unit group and the mapping unit group mapped by the motion execution unit group on the first motion model; The module is configured to modify the motion execution unit group relative to the mapping unit group based on the configuration parameters of the user-output motion indication on the mapping unit group, thereby obtaining the modified motion execution unit group.

9. An electronic device, characterized in that, The system includes a memory and a processor, the memory being used to store a computer program; the processor being used to execute the computer program to implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, which, when executed by a processor, implements the method according to any one of claims 1 to 7.