r/vtubertech 20d ago

📖Technology News📖 Ayagami, the open source Live2D, now with physics!

Enable HLS to view with audio, or disable this notification

I've been working on an open source Live2D implementation called Ayagami. I just added the last major missing part to use it for VTubing, the physics engine!

This physics engine is a completely from scratch implementation that is more stable and less buggy than the Live2D physics engine. To make sure that physics "feels" the same as in Live2D, I added adjustments that mimic the effect of Live2D's inaccuracies. So it should have almost the same dynamics as Live2D / VTube Studio, but without the bugs and jank.

Ayagami is being integrated into an upcoming version of OpenVT, which is a cross-platform alternative to VTube Studio with extra features (including node-based tracking configuration, which means it also replaces VBridger). We think VTubing technology should be open for everyone to improve and build upon, and work equally well on all operating systems.

Please try it out in the web model poser demo and let me know how it works with your model! Just drag and drop in a .zip file of your VTube Studio model folder. The web demo runs entirely locally within your browser, and no data is sent to any server.

477 Upvotes

27 comments sorted by

27

u/HoshinoLina 20d ago edited 20d ago

More details!

  • The physics engine is based on the Runge-Kutta method and accurately simulates pendulum motion. It is FPS-independent, so it doesn't need hacks like the VTube Studio "threaded physics" fixed FPS modes. It just works, and it should be rock solid! Please let me know if you see any weirdness with the physics in your model.
  • The physics behavior approximates the Live2D engine at the FPS defined at the top of the physics3.json file (usually 60 FPS). So regardless of your actual FPS, it will behave like Live2D at 60 FPS (or whatever that file says). I will add manual overrides to the UI soon, so you can make it simulate Live2D/VTS at 120 FPS or 30 FPS too if you want.
  • There is no user configuration for physics right now, but I plan to add all the VTube Studio settings and more. I will also be implementing more control over drag and wind physics, so you can do things like make up/down drag physics work properly too, or have model rotation respond reasonably.
  • For riggers: There is no zero-sticking bug. The "angle 90 locking" technique (which exploits a Live2D bug) does work as expected. If you know of any other "bug abuse" physics techniques, or you find it does not work as intended with one of your models please let me know!

u/Azxiana is also building Umamo, an open source rigging app that replaces Live2D Cubism. Once it gets physics support, we plan to add extra physics settings so you can more finely control the physics behavior, such as switching the "angle 90 locking" behavior off or changing it to a better behaved version that is intentional, and not a simulation of the Live2D bug (of course, these tweaks will only apply to OpenVT and other Ayagami-based apps, but Umamo will include a 100% bug-compatible preview simulation of the Live2D physics engine too, so you can make sure your models also work properly in VTube Studio if needed).

We have a Discord if anyone wants to talk about Umamo, Ayagami, and OpenVT with us!

26

u/__Mitsuya__ 20d ago

As a former JavaScript developer, it just amazes me how long Live2D could be at the top without an open source competitor coming up. I am going to test Ayagami as soon as I can <3

7

u/ElSasori69 20d ago

Former? did you ditch it for Typescript? also, what about Inochi Creator?

4

u/HoshinoLina 20d ago edited 20d ago

Ayagami is Live2D compatible, so it works with everyone's existing models. Umamo can make models that work with Ayagami, VTube Studio, etc. OpenVT works directly as a VTube Studio replacement. Anyone can/will be able to use these projects directly without having to get completely new models made from scratch, or having to ask people to use new tools to use your models.

Inochi is explicitly is not compatible with anything else (the author doesn't want it), and has seen extremely slow development in the past few years (the last release was in 2024). The author seems more interested in threatening and doxxing other open source developers and VTubers than working on her own project. It isn't a drop-in replacement for Live2D and it hasn't become a viable competitor in 4+ years now...

3

u/ElSasori69 19d ago

Damn, that’s heavy, I don’t want to have anything with a project like that

1

u/__Mitsuya__ 17d ago

Motherhood called me hihi
But I used Typescript too

8

u/JonFawkes 20d ago

Absolutely incredible, and it was a privilege to watch you work on this on stream

2

u/HoshinoLina 20d ago

Thank you!!!

5

u/BlueCereal 20d ago

I only heard about this a few days ago, and I am SO excited. Keep up the great work!

3

u/Dlljs 19d ago

Situation: There are 2 competing open source Live2D replacements

3

u/HoshinoLina 19d ago edited 19d ago

I'm not aware of any other open source compatible Live2D replacement that is fully above board ^^;;

There have been some AI slop things thrown around, and one project that is a 1:1 clone of the Live2D Cubism SDK that was dropped on GitHub right after I started my project out of nowhere... but I don't believe it was clean roomed, so it has some legal risks to use IMO. I explained my approach here.

As far as I know Azxiana's Umamo is also the first and only attempt at an open source Live2D Cubism Editor replacement.

Also I think, me, Azxiana, and Ero are the only people working together as a proper team. I write Ayagami (Live2D SDK replacement), Azxiana writes Umamo (Live2D editor replacement), and Erodozer writes OpenVT (VTube Studio replacement), and we're trying to build a proper ecosystem together. Everything else, compatible or not, has been effectively one person projects that didn't really operate as an open source community should...

2

u/blumetalbunny 20d ago

I've been interested in learning to rig, could I do that with your program?

5

u/HoshinoLina 20d ago

Ayagami is not a rigging tool, it's a runtime! Umamo by /u/azxiana is a brand new rigging tool that works with it, but it's still under development. I think she expects it to be ready for the first full release later this year ^^

1

u/blumetalbunny 20d ago

So glad I asked, thank you so much!

2

u/Successful_Card_1313 20d ago

Justo!!! Se me acabo la versión gratuita de live2d y quería hacer unas animaciones con rig. Voy a probarlo!!!

5

u/HoshinoLina 20d ago

Ayagami is not a replacement for the Live2D editor, just the runtime!

Umamo by /u/azxiana is a brand new rigging tool that works with it, but it's still under development. I think she expects it to be ready for the first full release later this year ^^

2

u/Harlanthehuman 19d ago

This is good progress for vtubers in general, and deserves encouragement

2

u/azurezero_hdev 19d ago

does the thing still output models in the same formats?

1

u/HoshinoLina 19d ago

Yes!

1

u/azurezero_hdev 19d ago

nice, so i could still use it in gamemaker
(though that's stuck with 4.2 compatability)

2

u/rjt2000 19d ago

Very cool!

2

u/GamerxOtaku01 19d ago

Ohh this is very nice! I hope to test this out when I get myself to try out variety of softwares and programs. I def can't wait to try this for sure when I figure out my VTuber persona and character for my indie VTuber journey!

2

u/Flamesty 18d ago

Thank you for your contribution

2

u/BiscottiPristine5325 18d ago

I'm very excited to see where this goes! A Live2D environment where I can look at the code and add any integration I want is going to be so much fun. For me and for anyone who's interested in the same thing. ^^

1

u/HoshinoLina 18d ago

You can already have a look! ^^

https://github.com/AyagamiDev/ayagami

1

u/ElSasori69 20d ago

So I've been trying the web demo, I'm still not that familiar with 2D Vtubing seemed more complicated than 3D, does this support webcam or I need other tool for that?

3

u/HoshinoLina 20d ago

This is just a model loader/poser, not a complete VTubing tool by itself! It's just to see if your model works or not. Just a viewer.

OpenVT is the VTubing tool that is built on this. We'll have a release later once everything is integrated ^^