flutter_scene 0.7.0-0 copy "flutter_scene: ^0.7.0-0" to clipboard
flutter_scene: ^0.7.0-0 copied to clipboard

3D rendering library for Flutter. Currently only supported when Impeller is enabled.

Flutter Scene

Scene: 3D library for Flutter

Scene is a general purpose realtime 3D rendering library for Flutter. It started life as a C++ component of the Impeller rendering backend in Flutter Engine, and is currently being actively developed as a pure Dart package powered by the Flutter GPU API.

The primary goal of this project is to make performant cross platform 3D easy in Flutter.

Examples AppExample GameDocsFAQ


Flutter Scene

Flutter Scene

Flutter Scene

Flutter Scene

Flutter Scene

Early preview! ⚠️ #

  • This package is in an early preview state. Things may break!
  • Relies on Flutter GPU for rendering, which is also in preview state.
  • This package currently only works when Impeller is enabled.
  • This package uses the experimental Dart "Native Assets" feature to automate some build tasks.
  • Given the reliance on non-production features, switching to the master channel is recommended when using Flutter Scene.

Features #

  • glTF (.glb) asset import.
  • PBR materials.
  • Environment maps/image-based lighting.
  • Blended animation system.

FAQ #

Q: What platforms does this package support? #

flutter_scene supports all platforms that Impeller currently supports.

On iOS and Android, Impeller is Flutter's default production renderer. So on these platforms, flutter_scene works without any additional project configuration.

On MacOS, Windows, and Linux, Impeller is able to run, but is not on by default and must be enabled. When invoking flutter run, Impeller can be enabled by passing the --enable-impeller flag.

Platform Status
iOS 🟢 Supported
Android 🟢 Supported
MacOS 🟡 Preview
Windows 🟡 Preview
Linux 🟡 Preview
Web 🔴 Not Supported
Custom embedders 🟢 Supported

Q: When will web be supported? #

Although there has been some very promising experimentation with porting Impeller to web, there is currently no ETA on web platform support.

Web is an important platform, and both flutter_gpu and flutter_scene will eventually support Flutter web.

Q: I'm seeing errors when running the importer: ProcessException: No such file or directory. How do I fix it? #

Install CMake.