The goal of Project Chen is to study procedural animation techniques which

  • Generate animations look physically realistic
  • Can be used in real-time applications
  • Are affordable to indie game studios

The search for academic results is mainly in the computer graphics field and the robotics field.

Results from the computer graphics field provide kinematic methods, which generate trajectories or plans that are geometrically feasible, but are not necessarily feasible physically. The benefit of these methods are that they are usually fast to be solved in real-time.

On the other hand, methods used in robotics can mostly generate physically feasible trajectories, and some are even able to generate complex gaits without prior knowledge. The drawback is that they are usually expensive to compute.

In game industry, motion matching has been used more and more in AAA games, thanks to the maturation of motion capture techniques. It can generate qualified and responsive locomotion animations and is very fast. However, not all studios are affordable of motion capturing and data for non-humanoid characters are difficult to get.

Below I describe 5 papers that are very helpful for this project.

  1. Gait and trajectory optimization for legged systems through phase-based end-effector parameterization

    The method I used in the game Desolation Place. It adopts trajectory optimization by collocation to calculate a trajectory satisfying a simplified body dynamics and contact constrains.

    It is able to generate believable animations, but not fast enough to be used in real-time. Moreover, since it enforces hard constrains, the solver can fail if the gait phases are not properly specified.

  2. Mode-adaptive neural networks for quadruped motion control

    A learning-based motion matching method that is suitable for quadruped characters. It solves the common problem encountered in naive motion matching methods, which is unbelievable results due to averaging inconsistent clips, by training a gaiting network to dynamically blend the specific motion modes.

    This method needs abundant classified motion capture data, but in terms of this project, data generated by trajectory optimization can be used to train the network.

  3. Discovery of complex behaviors through contact-invariant optimization

    An alternative to the already mentioned trajectory optimization method. It can be used on any given dynamics model, and is very good at dealing with contacts. By using soft constrains, I assume that it is easier to find a solution. It is also shown in the paper that this method can discover non-trivial but reasonable behaviors, which is very interesting to this project.

    For more details on this paper, see the first one of the related videos.

  4. Interactive control of diverse complex characters with neural networks

    The work done by the same authors as the third paper. It learns a closed-loop policy from the trajectories calculated above. In order to solve the averaging problem as mentioned, it couples the training of the police with the generation of the trajectory. The result is a robust policy that can be executed in real-time.

    If this project ends up to use actual simulated bodies rather than kinematic ones, this can serve as a starting point. For more details, see the second one of the related videos.

  5. An efficient acyclic contact planner for multiped robots

    A contact planner based on searching. It provides an efficient way to plan a sequence of contact points before executing.

    Though the results are always conservative, the way how it finds a reachable set is valuable. For this project, there may need some way to guide the path for the agent, and this may be what in need.

Related Papers

  1. PLOS. “Simple model explains why different four-legged animals adopt similar gaits.” ScienceDaily. ScienceDaily, 21 November 2019. <www.sciencedaily.com/releases/2019/11/191121141423.htm>.
  2. Geisert, Mathieu, et al. “Contact Planning for the ANYmal Quadruped Robot using an Acyclic Reachability-Based Planner.” Annual Conference Towards Autonomous Robotic Systems. Springer, Cham, 2019.
  3. Tonneau, Steve, et al. “An efficient acyclic contact planner for multiped robots.” IEEE Transactions on Robotics 34.3 (2018): 586-601.
  4. He, Zongyou, et al. “Adopting Procedural Animation Technology to Generate Locomotion of Quadruped Characters in Dynamic Environments.” International Journal of Computer and Information Engineering 6.5 (2012): 659-664.
  5. Zhang, He, et al. “Mode-adaptive neural networks for quadruped motion control.” ACM Transactions on Graphics (TOG) 37.4 (2018): 1-11.
  6. Holden, Daniel, Taku Komura, and Jun Saito. “Phase-functioned neural networks for character control.” ACM Transactions on Graphics (TOG) 36.4 (2017): 1-13.
  7. Shi, Yapeng, et al. “Model predictive control for motion planning of quadrupedal locomotion.” 2019 IEEE 4th International Conference on Advanced Robotics and Mechatronics (ICARM). IEEE, 2019.
  8. Diedam, Holger, et al. “Online walking gait generation with adaptive foot positioning through linear model predictive control.” 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2008.
  9. Ma, Wen-Loong, Kaveh Akbari Hamed, and Aaron D. Ames. “First steps towards full model based motion planning and control of quadrupeds: A hybrid zero dynamics approach.” arXiv preprint arXiv:1909.08124 (2019).
  10. A. W. Winkler, F. Farshidian, M. Neunert, D. Pardo and J. Buchli, “Online walking motion and foothold optimization for quadruped locomotion,” 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, 2017, pp. 5308-5313, doi: 10.1109/ICRA.2017.7989624.
  11. Mordatch, Igor, Martin De Lasa, and Aaron Hertzmann. “Robust physics-based locomotion using low-dimensional planning.” ACM SIGGRAPH 2010 papers. 2010. 1-8.
  12. Mordatch, Igor, Emanuel Todorov, and Zoran Popović. “Discovery of complex behaviors through contact-invariant optimization.” ACM Transactions on Graphics (TOG) 31.4 (2012): 1-8.
  13. Mordatch, Igor, et al. “Animating human lower limbs using contact-invariant optimization.” ACM Transactions on Graphics (TOG) 32.6 (2013): 1-8.
  14. Mordatch, Igor, and Emo Todorov. “Combining the benefits of function approximation and trajectory optimization.” Robotics: Science and Systems. Vol. 4. 2014.
  15. Mordatch, Igor, et al. “Interactive control of diverse complex characters with neural networks.” Advances in Neural Information Processing Systems 28 (2015): 3132-3140.
  16. Kelly, Matthew. “An introduction to trajectory optimization: How to do your own direct collocation.” SIAM Review 59.4 (2017): 849-904.
  17. Betts, John T. “Survey of numerical methods for trajectory optimization.” Journal of guidance, control, and dynamics 21.2 (1998): 193-207.
  18. Winkler, Alexander W., et al. “Gait and trajectory optimization for legged systems through phase-based end-effector parameterization.” IEEE Robotics and Automation Letters 3.3 (2018): 1560-1567.
  19. Neunert, Michael, et al. “Trajectory optimization through contacts and automatic gait discovery for quadrupeds.” IEEE Robotics and Automation Letters 2.3 (2017): 1502-1509.
  20. Erez, Tom, and Emanuel Todorov. “Trajectory optimization for domains with contacts using inverse dynamics.” 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2012.
  21. Masuri, Ariel, et al. “Gait and Trajectory Optimization by Self-Learning for Quadrupedal Robots with an Active Back Joint.” Journal of Robotics 2020 (2020).
  22. Levine, Sergey, and Vladlen Koltun. “Guided policy search.” International conference on machine learning. PMLR, 2013.
  23. Chebotar, Yevgen, et al. “Path integral guided policy search.” 2017 IEEE international conference on robotics and automation (ICRA). IEEE, 2017.
  24. Johansen, Rune Skovbo. “Automated semi-procedural animation for character locomotion.” Aarhus Universitet, Institut for Informations Medievidenskab (2009).
  25. Horswill, Ian Douglas. “Lightweight procedural animation with believable physical interactions.” IEEE Transactions on Computational Intelligence and AI in Games 1.1 (2009): 39-49.
  26. Bhatti, Z. “Gait analysis and biomechanics of quadruped motion for procedural animation and robotic simulation.” Bahria University Journal of Information & Communication Technologies (BUJICT) 10.2 (2017).
  27. Bhatti, Zeeshan, and Asadullah Shah. “Animation of Quadrupeds in 3D Environment.”
  28. Tolani, Deepak, Ambarish Goswami, and Norman I. Badler. “Real-time inverse kinematics techniques for anthropomorphic limbs.” Graphical models 62.5 (2000): 353-388.
  29. Goslow Jr, George E., Robert M. Reinking, and Douglas G. Stuart. “The cat step cycle: hind limb joint angles and muscle lengths during unrestrained locomotion.” Journal of Morphology 141.1 (1973): 1-41.
  30. Yi, Gwonjin, and Junghoon Jee. “Search Space Reduction In Motion Matching by Trajectory Clustering.” SIGGRAPH Asia 2019 Posters. 2019. 1-2.

Related Videos