Animation generation system, animation generation method, and animation generation program
The animation generation system simplifies the process of generating animations by using inverse kinematics to determine hand and waist positions, addressing the inefficiency of existing methods and enhancing realism through accurate posture adjustments.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- TOYOTA JIDOSHA KK
- Filing Date
- 2024-01-15
- Publication Date
- 2026-06-30
AI Technical Summary
Generating animations of a person performing a predetermined action at a predetermined location of an object is time-consuming and labor-intensive due to the need for adjusting blending conditions to adjust the person's posture.
An animation generation system that utilizes an information acquisition unit to acquire location information, a first calculation unit to determine hand position, a second calculation unit to determine waist position based on hand and origin information, and a generation unit to generate the animation using inverse kinematics calculation processing, simplifying the process of generating animations.
Enables easy and efficient generation of animations of a person performing a predetermined action on an object, improving realism by considering the relationship between hand, waist, and origin positions, and allowing for various postures such as facing or looking down at the object.
Smart Images

Figure 0007882278000001 
Figure 0007882278000002 
Figure 0007882278000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to an animation generation system, an animation generation method, and an animation generation program for generating an animation of a person who is a character performing a predetermined action at a predetermined location of an object within an animation space.
Background Art
[0002] An animation generation system for generating an animation of a person in motion is known (see, for example, Patent Document 1).
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] The applicant of the present application has found the following problems. A person who is a character in an animation space may perform a predetermined action at a predetermined location of an object. When attempting to generate an animation of such a person, in order to adjust the person's posture, the blending conditions are adjusted, but this adjustment may take a lot of time and effort.
[0005] In view of such problems, the present disclosure has been made to realize an animation generation system, an animation generation method, and an animation generation program that can easily generate an animation of a person when the person performs a predetermined action at a predetermined location of an object.
Means for Solving the Problems
[0006] An animation generation system according to one aspect of this disclosure is an animation generation system that generates animation of a person, who is a character, performing a predetermined action on a predetermined part of an object in an animation space, An information acquisition unit that acquires location information of the predetermined location, A first calculation unit calculates the position information of the person's hand when performing the predetermined action at the predetermined location based on the position information of the predetermined location, A second calculation unit obtains the relationship between the position information of the person's hand, the person's origin, and the position information of the person's waist, corresponding to the posture information included in the position information of the predetermined location, and calculates the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin. Based on the position information of the person's hands, the position information of the person's waist, and the origin information of the person, a generation unit calculates the position information of other parts of the person necessary for generating the person's animation using inverse kinematics calculation processing, and generates the person's animation. It is equipped with. An animation generation method according to one aspect of the present disclosure is an animation generation method that generates an animation of a person, who is a character, performing a predetermined action on a predetermined location of an object in an animation space, A step of acquiring location information of the predetermined location, A step of calculating the position information of the person's hand when performing the predetermined action at the predetermined location based on the position information of the predetermined location, A step of obtaining the relationship between the position information of the person's hand, the person's origin information, and the position information of the person's waist, corresponding to the posture information included in the position information of the predetermined location, and calculating the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin information. Based on the position information of the person's hands, the position information of the person's waist, and the origin information of the person, the process of calculating the position information of other parts of the person necessary for generating the person's animation using inverse kinematics calculation processing, and generating the person's animation, It is equipped with. An animation generation program according to one aspect of this disclosure is an animation generation program that generates animation of a person, who is a character, performing a predetermined action on a predetermined location of an object in an animation space, A process for acquiring location information of the predetermined location, A process to calculate the position information of the person's hand when performing the predetermined action at the predetermined location based on the position information of the predetermined location, The process involves obtaining the relationship between the position information of the person's hand, the person's origin, and the position information of the person's waist, corresponding to the posture information included in the position information of the predetermined location, and calculating the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin. Based on the position information of the person's hands, the position information of the person's waist, and the origin information of the person, a process is performed to calculate the position information of other parts of the person necessary for generating the person's animation using inverse kinematics calculations, and to generate the person's animation. Have the computer execute it. [Effects of the Invention]
[0007] According to this disclosure, it is possible to realize an animation generation system, an animation generation method, and an animation generation program that can easily generate animations of a person, who is a character, performing a predetermined action on a predetermined part of an object within an animation space. [Brief explanation of the drawing]
[0008] [Figure 1] This is a block diagram showing the schematic system configuration of the animation generation system of Embodiment 1. [Figure 2] This is a flowchart illustrating the process of generating human animation using the animation generation system of Embodiment 1. [Figure 3] This figure shows an example of calculating the position information of a person's waist when generating a human animation using the animation generation system of Embodiment 1. [Figure 4]This figure shows an example of calculating the position information of a person's waist when generating a human animation using the animation generation system of Embodiment 2. [Figure 5] This figure shows an example of calculating the position information of a person's head when generating a human animation using the animation generation system of Embodiment 3. [Modes for carrying out the invention]
[0009] The following describes specific embodiments applying this disclosure with reference to the drawings. However, this disclosure is not limited to the following embodiments. Also, for clarity, the following description and drawings have been simplified as appropriate.
[0010] <Embodiment 1> Figure 1 is a block diagram showing a schematic system configuration of the animation generation system of this embodiment. The animation generation system 1 of this embodiment generates animation of a person, for example, when a person, who is a character, performs a predetermined action on a predetermined part of an object within the animation space. In other words, the person is a virtual person performing an action within the animation space.
[0011] As shown in Figure 1, the animation generation system 1 comprises an information acquisition unit 2, a first calculation unit 3, a second calculation unit 4, and a generation unit 5. The information acquisition unit 2 acquires positional information of a predetermined location on an object when a predetermined action is performed on that location. The object is one that is affected by a predetermined action performed by a person directly or using a tool, and can be, for example, an object used on a construction site or an object used in daily life. A predetermined location on an object is a part of the object that is affected by a predetermined action performed by a person directly or using a tool. The tool can be any tool supported by a person's hand to perform the predetermined action on the predetermined location on the object. The predetermined action can be any action performed to affect the predetermined location on the object. The location information of the predetermined location may be input to the information acquisition unit 2 using, for example, an input device. The position information of a predetermined location includes the coordinate information and the orientation information of the predetermined location. The coordinate information of the predetermined location is, for example, the three-dimensional coordinate information of the predetermined location in a world coordinate system (e.g., the XYZ orthogonal coordinate system shown in FIG. 3 etc.) within an animation space. The orientation information of the predetermined location is, for example, the orientation information that three-dimensionally indicates the direction affected by a predetermined operation at the predetermined location in the world coordinate system within the animation space.
[0012] Based on the position information of the predetermined location, the first calculation unit 3 calculates the position information of a person's hand when performing a predetermined operation on the predetermined location. For example, when performing a predetermined operation on a predetermined location of an object using a tool, the relative positional relationship among the predetermined location, the tool, and the person's hand is set in the first calculation unit 3 in advance, and the first calculation unit 3 calculates the position information of the person's hand via the position information of the tool calculated based on the position information of the predetermined location. The position information of the person's hand includes, for example, the three-dimensional coordinate information of the person's hand in a world coordinate system within an animation space. The position information of the tool may include, for example, in addition to the three-dimensional coordinate information of the tool in a world coordinate system within an animation space, the orientation information that three-dimensionally indicates the orientation of the tool in the world coordinate system within the animation space.
[0013] The second calculation unit 4 obtains the relationship among the position information of the person's hand, the person's origin information, and the position information of the person's waist according to the orientation information included in the position information of the predetermined location, and calculates the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin information. For example, although details will be described later, the second calculation unit 4 may determine whether an object is a wall based on the position information of the predetermined location, and calculate the position information of the person's waist based on the determination result. The position information of the person's waist includes, for example, the three-dimensional coordinate information of the person's waist in a world coordinate system within an animation space.
[0014] >The generation unit 5 calculates the position information of other parts of the person necessary for generating the animation of the person using inverse kinematics calculation processing based on the position information of the person's hand, the position information of the person's waist, and the origin information of the person, and generates the animation of the person. Here, other parts of the person may be, for example, the person's elbows, shoulders, head, neck, knees, etc.
[0015] Next, the flow of generating the animation of a person using the animation generation system 1 of the present embodiment will be described. FIG. 2 is a flowchart showing the flow of generating the animation of a person using the animation generation system of the present embodiment. FIG. 3 is a diagram showing an example of calculating the position information of the waist of the person when generating the animation of the person using the animation generation system of the present embodiment. Here, in the present embodiment, as shown in the two figures on the left side of FIG. 3, when the person 10 uses the impact 11, which is a tool, to screw a bolt into a bolt hole formed in the wall 12, which is an object, at a predetermined position, and the operation of screwing the bolt into the bolt hole is taken as a predetermined operation, and as shown in the two figures on the right side of FIG. 3, when a bolt hole formed in a member other than the wall 12 is taken as a predetermined position and the operation of screwing the bolt into the bolt hole is taken as a predetermined operation, it will be described by assuming these cases. In addition, in FIG. 3, the positions are shifted so that the position information P1 of the bolt hole and the position information P4 of the impact 11 are clear. Also, the position of the hand of the person 10, the position of the waist of the person 10, and the position of the feet of the person 10 may not be accurately shown.
[0016] First, the information acquisition unit 2 acquires the position information P1 of the bolt hole (S1). At this time, for example, as shown in FIG. 3, when screwing a bolt into the bolt hole of the wall 12, the attitude information of the bolt hole is in the horizontal direction (for example, the Y-axis direction) and includes a component toward the wall 12 (for example, a component in the - side direction of the Y-axis). When screwing a bolt into a bolt hole formed in a horizontally arranged member other than the wall 12, the attitude information of the bolt hole may be in the vertical direction (for example, the Z-axis direction) and include a component toward the member (for example, a component in the - side direction of the Z-axis).
[0017] Next, the first calculation unit 3 calculates the position information of the person 10's hands (for example, the position information of the centers of the wrists of both hands) P2 and the position information of the person 10's feet (for example, the position information of the center between the heels of both feet) P3 based on the position information P1 of the bolt holes (S2). The first calculation unit 3 has a correlational positional relationship set between, for example, the position information P1 of the bolt hole, the position information P2 of the person 10's hand, the position information P3 of the person 10's foot, and the position information P4 of the part that affects the bolt hole in the impact 11 (for example, the part that engages with the bolt). The first calculation unit 3 calculates the position information P4 of the impact 11 so that the coordinate information and orientation information of the bolt hole position information P1 match the coordinate information and orientation information of the part of the impact 11 that affects the bolt hole. Then, the first calculation unit 3 calculates the position information P2 of the person's hand P2 based on the correlated positional relationship between the position information P2 of the person's hand P4 and the position information P4 of the impact 11.
[0018] Furthermore, based on the correlated positional relationship between the bolt hole position information P1 and the foot position information P3 of person 10, the foot position information P3 of person 10 is calculated such that, for example, on a predetermined floor surface, the center between the heels of person 10 is positioned at a predetermined horizontal distance away from the bolt hole position (e.g., X coordinate position and Y coordinate position). In this embodiment, the foot position information P3 of person 10 is set as the origin information of person 10. Furthermore, the first calculation unit 3 may have a function or machine learning model pre-set to show the relationship between the position information P1 of the bolt hole, the position information P2 of the person 10's hand, the position information P3 of the person 10's foot, and the position information P4 of the impact 11.
[0019] Next, the second calculation unit 4 determines whether the member in which the bolt hole is formed is a wall 12 or not, based on the position information P1 of the bolt hole (S3). More specifically, the second calculation unit 4 determines, for example, whether the bolt hole is tilted at an angle of 20° or more relative to the horizontal (however, the angle can be changed as appropriate), based on the orientation information of the position information P1 of the bolt hole. If the bolt hole is not inclined at an angle of 20° or more relative to the horizontal, the second calculation unit 4 determines that the bolt hole is formed in the wall 12 (YES in S3). If the bolt is inclined at an angle of 20° or more relative to the horizontal, the second calculation unit 4 determines that the bolt hole is formed in a member other than the wall 12 (NO in S3).
[0020] If a bolt hole is formed in the wall 12, the second calculation unit 4 sets the hand height position at which a person 10 transitions to a first squatting position when the person 10 is standing with their waist upright as the first height threshold (S4). On the other hand, if a bolt hole is formed in a member other than the wall 12, the second calculation unit 4 sets the hand height position at which a person 10 transitions to a second squatting position when the person 10 is bending over as the second height threshold (S5). In other words, the second calculation unit 4 sets the hand position information according to the posture information of the bolt hole position information P1. In this case, the first height threshold is greater than the second height threshold. The first and second height thresholds are often pre-set in the second calculation unit 4, for example, and can be changed as appropriate so that the animation of the person 10 is in a natural posture.
[0021] Next, if it is determined that a bolt hole is formed in the wall 12, the second calculation unit 4 determines whether the height position of the person's hand is below the first height threshold based on the position information P2 of the person's hand and the first height threshold information. If the bolt hole is formed in a member other than the wall 12, it determines whether the height position of the person's hand is below the second threshold based on the position information P2 of the person's hand and the second height threshold information (S6). Then, if the height position of person 10's hands is higher than the first height threshold (NO in S6), the second calculation unit 4 calculates, for example, as shown in the leftmost figure of Figure 3, the first position information P5-1 of person 10's waist, which is the first standing posture in which person 10 has their waist straight (S7).
[0022] If the height position of person 10's hands is below the first height threshold (YES in S6), the second calculation unit 4 calculates, for example, as shown in the second figure from the left in Figure 3, the second position information P5-2 of person 10's waist, which is the first squatting posture in which person 10 has their waist upright (S8). If the height of person 10's hands is higher than the second height threshold (NO in S6), the second calculation unit 4 calculates, for example, as shown in the third figure from the left in Figure 3, the third position information P5-3 of person 10's waist, which is the second standing posture in which person 10 is bent at the waist (S7).
[0023] If the height position of person 10's hands is below the second height threshold (YES in S6), the second calculation unit 4 calculates, for example, as shown in the rightmost figure of Figure 3, the fourth position information P5-4 of person 10's waist, which is the second squatting posture in which person 10 has bent waist (S8). At this time, the second calculation unit 4 has a correlational positional relationship set between the position information P2 of the person 10's hands, the position information P3 of the person 10's feet, and the position information P5 of the person 10's waist. Based on this correlational positional relationship, the second calculation unit 4 calculates a first position (for example, a position vertically upward (for example, on the Z-axis + side) at a first height H1 min relative to the position of the person 10's feet) as the first position information P5-1 of the person 10's waist, as shown in the leftmost diagram of Figure 3.
[0024] Based on the correlated positional relationship, the second calculation unit 4 calculates a pre-set second position relative to the position of the person 10's feet (for example, a position vertically above the position of the person 10's feet at a second height H2 minutes) as the second position information P5-2 of the person 10's waist, as shown in the second figure from the left in Figure 3. The second calculation unit 4 calculates a third position (for example, a position vertically above the position of the feet of person 10 by a third height H3) based on the correlated positional relationship, as shown in the third figure from the left in Figure 3, as the third position information P5-3 of the waist of person 10. Here, the first height H1 and the third height H3 may be equal or different.
[0025] The second calculation unit 4, based on the correlated positional relationship, may calculate a predetermined fourth position relative to the position of the person 10's feet (for example, a position vertically above the position of the person 10's feet by a fourth height H4) as the fourth position information P5-4 of the person 10's waist, as shown in the rightmost diagram of Figure 3. Here, the second height H2 and the fourth height H4 may be equal or different. Furthermore, the second calculation unit 4 may have a function or machine learning model pre-configured that shows the relationship between the position information P2 of person 10's hands, the position information P3 of person 10's feet, and the position information P5 of person 10's waist. In this case, it is preferable to set the input side as the position information P2 of person 10's hands and the position information P3 of person 10's feet, and the output side as the position information P5 of person 10's waist, and have a machine learning model such as a neural network learn the relationship between the position information P2 of person 10's hands, the position information P3 of person 10's feet, and the position information P5 of person 10's waist.
[0026] Next, the generation unit 5 calculates the position information of other parts of the person 10 necessary for generating the animation of the person 10 using inverse kinematics calculation processing, based on the position information P2 of the person 10's hands, the position information P3 of the person 10's feet, and the position information P5 of the person 10, and generates the animation of the person 10 (S9). The inverse kinematics calculation process may be, for example, an inverse kinematic calculation process based on the Jacobian matrix and the Singularity-Robust Inverse (SR-Inverse) inverse matrix. In this way, the animation of person 10 is generated by inverse kinematics calculation using not only the position information P2 of person 10's hands but also the position information P5 of person 10's waist. As a result, it is possible to generate not only the posture in which person 10 is positioned facing the wall 12, as shown in the two figures on the left of Figure 3, but also the posture in which person 10 is looking down at the component from above, as shown in the two figures on the right of Figure 3.
[0027] The animation generation system 1 and animation generation method of this embodiment calculate the position information of other parts of the person 10 necessary for generating the animation of the person 10 using inverse kinematics calculation processing, based on the position information P2 of the person 10's hands, the position information P3 of the person 10's feet, and the position information P5 of the person 10. Therefore, the animation generation system 1 and animation generation method of this embodiment can easily generate animations of a person 10 when the person 10 performs a predetermined action on a predetermined part of an object, compared to the case where the person's posture is adjusted by adjusting blending conditions and then the animation of the person is generated.
[0028] Furthermore, the animation generation system 1 and animation generation method of this embodiment generate the animation of person 10 not only using the position information P2 of person 10's hands, but also the position information P5 of person 10's waist, by inverse kinematics calculation. Therefore, the animation generation system 1 and animation generation method of this embodiment can generate not only a posture in which the person 10 is positioned facing the wall 12, as shown in the two left-hand figures of Figure 3, but also a posture in which the person 10 is looking down at the component from above, as shown in the two right-hand figures of Figure 3.
[0029] <Embodiment 2> Figure 4 shows an example of calculating the position information of a person's waist when generating a human animation using the animation generation system of this embodiment. Note that in Figure 4, the positions of the bolt hole position information P1 and the impact 11 position information P4 are shifted to make them clear. Also, the positions of the person's hands, waist, and feet may not be accurately shown.
[0030] For example, as shown in Figure 4, when screwing a bolt into a bolt hole formed in a wall 12, a person 10 may stare at the bolt hole. In such a case, the process is substantially the same as generating an animation of person 10 using the animation generation system 1 of Embodiment 1, but the second calculation unit 4 determines, for example, whether or not it is necessary to stare at the bolt hole after determining that a bolt hole has been formed in the wall 12. At this time, it is preferable that whether or not it is necessary to stare at the bolt hole is predetermined in the second calculation unit 4.
[0031] Then, if it is necessary to observe the bolt hole, the second calculation unit 4 calculates, for example, a position equal to the height of the bolt hole in the vertical direction and a predetermined distance from the bolt hole in the horizontal direction (for example, a position equal to the position of the person 10's feet in the horizontal direction) as the position information of the person 10's head (for example, the position information of the center of the person 10's head) P6. Here, the position information of the person 10's head P6 includes the 3D coordinate information of the person 10's head in the world coordinate system within the animation space.
[0032] The second calculation unit 4 calculates the waist position information P5 of person 10 based on the head position information P6 of person 10. The second calculation unit 4 calculates the waist position information P5 of person 10 as a predetermined fifth position relative to the head position of person 10 (for example, a position vertically downward (for example, on the Z-axis side) at a fifth height H5 minutes relative to the head position of person 10). On the other hand, if it is not necessary to observe the bolt holes, the second calculation unit 4 proceeds to the step of setting the hand height position at which the person 10 transitions to the first squatting position as first height threshold information, and calculates the waist position information P5 of the person 10 in the same manner as in Embodiment 1. This can improve the realism of human-animated figures.
[0033] <Embodiment 3> Figure 5 shows an example of calculating the position information of a person's head when generating a human animation using the animation generation system of this embodiment. Note that in Figure 5, the positions of the bolt hole position information P1 and the impact 11 position information P4 are shifted to make them clear. Also, the positions of the person's hands, waist, and feet may not be accurately shown.
[0034] In this embodiment, in order to improve the realism of the animation of person 10, the position information of person 10's head P7 is added to the position information of person 10's hands P2, the position information of person 10's feet P3, and the position information of person 10's waist P5, and the position information of person 10's head P7 is calculated by inverse kinematics calculation so that the position information of other parts of person 10 necessary for generating the animation of person 10 can be calculated. For example, if a bolt hole is formed in the wall 12, the second calculation unit 4 calculates the position information P7 of the person's head based on the calculated waist position information P5 of the person's waist, so that the person's head is positioned at a predetermined sixth position relative to the waist position of the person's waist. The second calculation unit 4 calculates the position information P7 of the person's head as a position vertically above the waist position of the person's waist, for example, as shown in the left diagram of Figure 5.
[0035] On the other hand, if the bolt holes are formed in a member other than the wall 12, the second calculation unit 4 calculates the position information P7 of the person's head based on the calculated position information P2 of the person's hand, so that the person's head is positioned at a preset seventh position relative to the position of the person's hand. For example, as shown in the right-hand diagram of Figure 5, the second calculation unit 4 calculates the position information P7 of the person's head as a position vertically above the position of the person's hand by a seventh height H7. This allows the position information of the head of person 10 (P7) to be added to the position information of person 10's hands (P2), feet (P3), and waist (P5), and then, through inverse kinematics calculations, the position information of other parts of person 10 necessary for the animation of person 10 can be calculated, thereby improving the realism of the animation of person 10.
[0036] In this case, if the position of the head of the person 10 is offset in the front-to-back direction of the person 10 (for example, in the Y-axis direction) depending on the relationship between the bolt hole and the position of the person 10's feet, and the orientation of the bolt hole, the realism of the animation of the person 10 can be further improved. For example, if a bolt hole is formed in the wall 12, the second calculation unit 4 determines whether the impact 11 can reach the bolt hole within the range of the person 10's outstretched arm, based on the position information P1 of the bolt hole and the position information P3 of the person 10's foot. In this case, the movable length of the person 10's arm may be set in advance in the second calculation unit 4.
[0037] If the second calculation unit 4 determines that the impact 11 will reach the bolt hole, it does not offset the position of the person's head. On the other hand, if the second calculation unit 4 determines that the impact 11 will not reach the bolt hole, it offsets the position of the person's head to the front of the person 10 (for example, to the Y-axis side), as shown in the left diagram of Figure 5, depending on the horizontal distance between the impact 11 and the bolt hole when the person 10 has their arms extended. In this case, the offset amount should be set such that, for example, as the horizontal distance between the impact 11 and the bolt hole increases, the amount of offset of the position of the person 10's head toward the front of the person 10 increases.
[0038] Furthermore, for example, if a bolt hole is formed in a member other than the wall 12, the second calculation unit 4 offsets the position of the person 10's head in the front-to-back direction of the person 10 according to the orientation of the bolt hole. For example, if the orientation of the bolt hole is directed downward (for example, towards the Z-axis) and the person 10 is tilted towards the rear (for example, towards the Y-axis), the second calculation unit 4 offsets the position of the person 10's head towards the front of the person 10 according to the amount of the rearward tilt, as shown in the right-hand diagram of Figure 5.
[0039] On the other hand, the second calculation unit 4, for example, if the bolt hole is tilted forward as its orientation moves downward, offsets the position of the person 10's head to the rear of the person 10 according to the amount of forward tilt. In this case, it is preferable that the offset amount is set such that, for example, the amount of offset of the person 10's head in the front-rear direction increases as the amount of tilt of the bolt hole in the front-rear direction increases.
[0040] This disclosure is not limited to the embodiments described above, and may be modified as appropriate without departing from the spirit of the invention. For example, in the above embodiment, one shot of the animation of person 10 performing a predetermined action at a predetermined location on an object is created, but by moving the positional information of the predetermined location, the animation of person 10 may be generated to be continuous. For example, in the above embodiment, the position information P3 of the person 10's feet is used as the origin information of the person 10, but the origin of the person 10 may be set to a position different from the position of the person 10's feet. In this case, the origin information of the person 10 can be used instead of the position information P3 of the person 10's feet. For example, this disclosure can also be implemented by having a processor execute a computer program to process each part of the animation generation system 1. The program can be stored and supplied to the computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memory (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (random access memory)).
[0041] Programs may be supplied to a computer by various types of transient computer-readable medium. Examples of transient computer-readable medium include electrical signals, optical signals, and electromagnetic waves. Transitory computer-readable medium can be supplied to a computer via wired communication channels such as electric wires and optical fibers, or via wireless communication channels. [Explanation of symbols]
[0042] 1. Animation Generation System 2 Information acquisition section 3. First calculation unit 4. Second calculation unit 5 Generation part 10 people 11 Impact 12 walls P1 Bolt hole location information P2 Human hand position information P3 Human foot position information P4 Impact location information P5 Human waist position information P6 Human head position information P7 Human head position information
Claims
1. An animation generation system that generates animation of a person, who is a character, performing a predetermined action on a predetermined part of an object within an animation space, An information acquisition unit that acquires location information of the predetermined location, A first calculation unit calculates the position information of the person's hand when performing the predetermined action at the predetermined location based on the position information of the predetermined location, A second calculation unit obtains the relationship between the position information of the person's hand, the person's origin, and the position information of the person's waist, corresponding to the posture information included in the position information of the predetermined location, and calculates the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin. Based on the position information of the person's hands, the position information of the person's waist, and the origin information of the person, a generation unit calculates the position information of other parts of the person necessary for generating the person's animation using inverse kinematics calculation processing, and generates the person's animation. An animation generation system equipped with the following features.
2. The second calculation unit described above is: The system acquires a first height threshold information, a second height threshold information lower than the first height threshold information, a first position information of the person's waist in a first standing posture with the person's waist upright, a second position information of the person's waist in a first squatting posture with the person's waist upright, a third position information of the person's waist in a second standing posture with the person's waist bent, and a fourth position information of the person's waist in a second squatting posture with the person's waist bent. Based on the orientation information included in the position information of the predetermined location, it is determined whether the object is a wall or not. If the object is a wall and the position information of the person's hand is higher than the first height threshold information, the first position information is calculated as the position information of the person's waist. If the object is a wall and the position information of the person's hand is less than or equal to the first height threshold information, the second position information is calculated as the position information of the person's waist. If the object is not a wall and the position information of the person's hand is higher than the second height threshold information, the third position information is calculated as the position information of the person's waist. The animation generation system according to claim 1, wherein if the object is not a wall and the position information of the person's hand is less than or equal to the second height threshold information, the fourth position information is calculated as the position information of the person's waist.
3. The animation generation system according to claim 1 or 2, wherein the second calculation unit has a correlation position relationship, function, or machine learning model pre-set to show the relationship between the position information of the person's hand, the origin information of the person, and the position information of the person's waist.
4. An animation generation method for generating an animation of a person, who is a character, performing a predetermined action on a predetermined part of an object within an animation space, A step of acquiring location information of the predetermined location, A step of calculating the position information of the person's hand when performing the predetermined action at the predetermined location based on the position information of the predetermined location, A step of obtaining the relationship between the position information of the person's hand, the person's origin information, and the position information of the person's waist, corresponding to the posture information included in the position information of the predetermined location, and calculating the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin information. Based on the position information of the person's hands, the position information of the person's waist, and the origin information of the person, the process of calculating the position information of other parts of the person necessary for generating the person's animation using inverse kinematics calculation processing, and generating the person's animation, An animation generation method comprising the following features.
5. An animation generation program that generates animation of a person, who is a character, performing a predetermined action on a predetermined part of an object within an animation space, A process for acquiring location information of the predetermined location, A process to calculate the position information of the person's hand when performing the predetermined action at the predetermined location based on the position information of the predetermined location, The process involves obtaining the relationship between the position information of the person's hand, the person's origin, and the position information of the person's waist, corresponding to the posture information included in the position information of the predetermined location, and calculating the position information of the person's waist based on the relationship, the position information of the person's hand, and the person's origin. Based on the position information of the person's hands, the position information of the person's waist, and the origin information of the person, a process is performed to calculate the position information of other parts of the person necessary for generating the person's animation using inverse kinematics calculations, and to generate the person's animation. An animation generation program that causes a computer to execute animations.