motion graphics artist

Blog

Where blog happens.

Creating a web app for viewing 3D Taekwon-Do techniques

 

As part of my 6th degree test for Taekwon-Do, I completed a thesis project exploring motion capture technologies for Taekwon-Do techniques. I recently completed a “stretch goals” version of a web app that plays the 3D files of techniques and patterns.

I had a couple months to complete it last year in off-hours and between gigs. I developed a pipeline from the angle of “what’s the most viable product with the time I have, near-zero experience with motion capture, and about $40?” I learned a ton about motion capture workflows, vibe coding, and how much I dislike motion capture cleanup (seriously. If anyone I know is good at this, I’ll just hire you next time).

The final is very much a proof of concept, not a polished product. There’s a lot that could be improved around the fidelity of the animation by using more advanced systems and better know-how of Cascadeur and mocap cleanup workflows. The library app is pretty bare bones and there’s likely a ton of optimization to be done around loading, playback and mobile UX.

I started big and narrowed it down. I looked into full motion capture suits and suites (Rokoko), markerless mocap (QuickMagic and Move.ai), and 3D web viewers (Spline and Three.js). Suits were out of the budget, plus the time it would take to learn that pipeline, so I dived deeper into markerless systems that could use just a single camera. They’ve come a long ways and did a decent job on a single video that probably wasn’t optimally set up for mocap data extraction.

I landed on QuickMagic and Move.ai to explore for markerless motion capture. It seems like the same rules apply for these systems when prepping for capture: tight, textured clothing captures better than a white uniform with a belt on a white background. Seems obvious, but figured I’d try a “politically correct” version; it would be cool to have the capture video of the performer in uniform shown side-by-side or overlaid (4D splats?) in the final app view.

The short version of the pipeline I settled on: record video – process in mocap program – clean up animation – upload to web

The long version:

  1. Record video of technique or pattern

  2. Process video in markerless motion capture program

  3. Export .fbx file (or similar compatible 3D format) from markerless mocap program

  4. Import .fbx file to 3D software for basic animation clean up

    • Trim dead space at beginning and end of timeline

    • [Optional] Ensure T pose on frame 1 if necessary

    • [Optional] Swap character model

    • Re-export .fbx for Cascadeur

  5. Import file to Cascadeur

  6. Complete animation cleanup in Cascadeur

  7. Export cleaned up animation to .gltf or .glb

  8. Upload to Spline for web viewing, or upload and wire up in custom app

I ended up taking it further than I’d anticipated and worked up a demo app for what could be a library of techniques and patterns, all in 3D. I worked with ChatGPT and Claude on some preliminary versions, finally settling into Claude Code for the long haul. By offloading development to Claude, I was able to focus more on figuring out the motion capture pipeline.

Check it out at https://tkd-3d.netlify.app/ Though it’s a rough proof of concept, I think there’s value in something like this as a supplemental educational tool. Being able to pause and zoom into any angle on hand or foot position would have been a game-changer for a very technical practitioner like myself.

One step closer to Neo saying “I know Taekwon-Do.”

Working with an AI

I learned a lot about working with an AI—and about myself—through this project. I find I use Claude like a mentor when learning a new software. I can ask it very targeted questions when I run into an issue and have it crawl the documentation and appropriate forums for answers. Only in the past few months have hallucinations reduced enough where this method is generally reliable. It fails if there’s not enough documentation or if the program is pretty new or if the program undergoes frequent updates that change the functionality or interface.

The benefits of using an AI as a mentor are obvious, but the major drawback concerns me: the (further) reduction of human connection and, therefore, knowledge spreading. Social media has already driven a reduction in human connection and I’m concerned that this is the next era of that. I’m a highly introverted and independent person, so removing things like the potential of an inexperienced or toxic human mentor (however small that chance is, and it’s not zero) is huge to me.

But I also recognize that human-AI interaction right now eliminates the accumulation of generational knowledge via knowledge spreading, eliminates the potential for another human (the mentor) to also learn, and eliminates the possibility of future innovation. This third point is the most important to me. Invention and innovation is often seeded in a past thought, action or interaction and oftentimes isn’t linear, nor might it happen close together in time. The culmination of myriad interactions taking place over time can give way to the gestalt moment when they finally align. I think this is the real danger that could slow or kill innovation: not necessarily that AI can think for us, but that we’ll stop seeding the soil for future ideas because we stopped interacting with each other in favor of perceived ease, speed, comfortability.

When I worked in software development 10 years ago, a dishearteningly common phrase I’d hear around the office was “Let me Google that for you.” It always came from a snarky senior dev talking down to who they perceived as a junior colleague, or trying to get a leg up in the pecking order. I think it’s obvious that the “just Google it” mindset—thought to encourage independent research and “self-starter” behavior—has a side effect of social isolation. I fear “just ask AI” is the next step that is currently taking shape.

Consolidation of and access to knowledge and information is a major issue in societies and to a degree dictates how they grow and evolve. We should take seriously how we’re interacting (or not) and develop an awareness beyond bottom-line usage of AI. If the average worker currently spends 6 hours a week with AI, that’s a 15% decrease in hours potentially spent with people over a 40 hour work week. Consider how much usage is predicted to change in 5 years and we’re talking about significant decreases in the amount of interaction real estate that fuels innovation. We are limiting what we can invent.

I’m sure this thought is missing a lot of factors like the possibility of new thoughts sparking because of interactions with AI. So it could all be the ramblings of an old me from the future; chalk it up to “but the old ways are changing!” Time always shrugs at change.

 
PlayMatt Lepley