logoalt Hacker News

tancoptoday at 5:50 AM1 replyview on HN

The animation system is good for most use cases but it's also super hard to do anything procedural like UI animation. If you want to animate a button you need to write 5 helpers to make it less painful. It's mostly designed for importing from a file.

A bit off topic but their handling of async IO tasks is awful. The engine polls them for you but you also need to poll them yourself in a separate system, because you can't access a `Commands` instance from inside the future without blocking the main thread and there is no way to pass a callback that runs when it's finished. That's not a problem most games will see but for anyone loading content from a server (like patch notes or server lists) or using Bevy as a UI library it can add up.


Replies

k__today at 9:22 AM

I don't know about animation, but it seems the UI system and their widget library was overhauled.

"The Feathers widgets have migrated to BSN, Bevy's next-generation scene system. BSN is a better foundation for widgets than the old spawn-function approach: it reduces boilerplate, lets you compose widgets together, parameterize widgets with SceneComponent props, reference font/image assets, and register observers in the same declaration."

https://bevy.org/news/bevy-0-19/