Log inSign up
Daniel Holden
682 posts
Image
user avatar
Daniel Holden
@anorangeduck
Animation & Machine Learning at Epic Games. Ex Ubisoft La Forge. Programmer & Occasional Writer.
Montréal, Québec
theorangeduck.com
Joined July 2013
953
Following
8,945
Followers
  • Pinned
    user avatar
    Daniel Holden
    @anorangeduck
    Mar 1, 2025
    I think Twitter is finally over for me. All else aside I'm just not enjoying it anymore. I'll host tweets on my website (theorangeduck.com/page/microblog) & be on bluesky (bsky.app/profile/theora…) for now. I'll still do what is eternally fun: mathematics, animation, graphics, gamedev!
    2K
  • user avatar
    Daniel Holden
    @anorangeduck
    Jul 31, 2020
    Happy to announce our new SIGGRAPH paper this year - Learned Motion Matching. We use Machine Learning to vastly reduce the memory usage of Motion Matching - allowing it to scale to huge databases of animation. Check out the blog post for more info: montreal.ubisoft.com/en/introducing…
    Image
    00:00
  • user avatar
    Daniel Holden
    @anorangeduck
    Jul 27, 2019
    Results from our new paper on data-driven physics simulation for games. Produces 300 to 4000 times speedup over standard physics simulations by combining Machine Learning, subspace simulation, and lots of training data! theorangeduck.com/page/subspace-…
    Image
    00:00
  • user avatar
    Daniel Holden
    @anorangeduck
    Oct 19, 2021
    Another blog post on animation programming fundamentals, and today it's a big one - code vs data driven displacement - or how we can move a character around a game world in a way which is both responsive and realistic. theorangeduck.com/page/code-vs-d…
    Image
    00:00
  • user avatar
    Daniel Holden
    @anorangeduck
    Sep 10, 2021
    I'm far from the most gifted Mathematician (I failed linear algebra three times as an undergraduate), but during my PhD I realized 90% of the papers in graphics are solving problems using the same basic set of tools - Linear Algebra, Optimization, and Machine Learning. (1/2)
  • user avatar
    Daniel Holden
    @anorangeduck
    Jul 31, 2020
    Replying to @anorangeduck
    The paper also describes our state of the art implementation of Motion Matching as used in production. For more info check out the paper and supplementary video: Paper: static-wordpress.akamaized.net/montreal.ubiso… Video: youtube.com/watch?v=16CHDQ…
    Image
    00:00
  • user avatar
    Daniel Holden
    @anorangeduck
    May 29, 2018
    Just published all the details of our SIGGRAPH 2018 paper on automatically cleaning up motion capture data! montreal.ubisoft.com/en/robust-solv…
    Image
    GIF
  • user avatar
    Daniel Holden
    @anorangeduck
    Jun 17, 2017
    Complete code and data now avaliable for Phase-Functioned Neural Networks for Character Control! theorangeduck.com/page/phase-fun…
    Image
  • user avatar
    Daniel Holden
    @anorangeduck
    Nov 5, 2023
    I got tired of the shortcomings of most of the .bvh animation file format viewers out there and decided to write my own. BVHView is a simple, hackable .bvh viewer written in #raylib that loads files almost instantly and renders them clearly and cleanly. github.com/orangeduck/BVH…
    Image
    00:00
    95K
  • user avatar
    Daniel Holden
    @anorangeduck
    Jun 9, 2023
    How can we make animation systems in games more robust to two of the most dreaded things: resets and teleports? In this article I propose one potential improvement: propagating velocities through animation systems. theorangeduck.com/page/propagati…
    Image
    00:00
    75K
  • user avatar
    Daniel Holden
    @anorangeduck
    Sep 6, 2023
    Unreal Engine 5.3 launches today! One of the things I worked on (with @RobotBrendan) this release was Learning Agents - an experimental plugin for doing Reinforcement Learning in UE. It's early days & lots to do but check out this tut for a sneak peak! dev.epicgames.com/community/lear…
    Image
    00:00
    97K
  • user avatar
    Daniel Holden
    @anorangeduck
    Oct 16, 2021
    IMO the two most important transformations for performant code are Array of Structs to Struct of Arrays and Loop Fusion to Loop Fission. The 1st is essential for cache perf and the 2nd breaks data dependencies and often unlocks more optimizations that were not obvious before.
    Image
  • user avatar
    Daniel Holden
    @anorangeduck
    Oct 10, 2023
    Something I worked on for Unreal 5.3 is a new experimental "Dead Blending" node - it's a drop-in replacement to the Inertialization node which often produces better blends when the animations are not synced or you have frequent transitions. theorangeduck.com/page/dead-blen…
    Image
    00:00
    102K
  • user avatar
    Daniel Holden
    @anorangeduck
    Aug 27, 2022
    Just pushed up a basic version of the Periodic AutoEncoder from @blacksquirrel__'s DeepPhase paper (with help from him & his code!) It works nicely as a Motion Matching feature when combined with bone position features (it encodes mainly velocities): github.com/orangeduck/Mot…
    Image
    00:00

New to X?

Sign up now to get your own personalized timeline!

Create account

By signing up, you agree to the Terms of Service and Privacy Policy, including Cookie Use.

Terms·Privacy·Cookies·Accessibility·Ads Info·© 2026 X Corp.
Don't miss what's happening
People on X are the first to know.
Log inSign up
Advertisement
Advertisement