Search code examples
flutterdartanimation3drive

How to create a 3d animation using flutter?


I am creating a Flutter app and need to insert multiple 3d models and have them translate across each other simultaneously. Are there any 3d party resources I can use since I don't think flutter supports it without any 3d party service, maybe something like Rive but for 3D? Thanks in advance for any help!


Solution

  • There appears to be some early work underway to support 3D natively in Flutter 3.7 using the new Impeller renderer, from what I just read on an official blog post about the Flutter Forward keynote:

    And now we’re starting early work on supporting 3D with RFlutter. During the keynote, we showed that you can import models created with Blender, and even use hot reload to iterate with Blender in real-time and see the results in a running app. It’s early days, but we’re excited about the initial performance we’re getting, along with the potential of integrating 3D into other Flutter experiences.

    enter image description here

    There's a brief demo in the keynote video at about 1:13

    Probably a bit too early at the time of writing (March 2023) but might be worth a look. Be aware that the Impeller renderer isn't ready for preview on Android yet according to the same post:

    The team is pleased to announce that the new Impeller rendering engine is ready for preview on iOS on the stable channel.

    ...

    We continue to make progress on a Vulkan backend for Impeller (with fallback to OpenGL on older devices), but Impeller on Android isn’t yet ready for preview. Android support is under active development, and we hope to share more about it — with more news about support for desktop and web — in future releases.

    Follow along with our progress in the Impeller project board on GitHub.