From 61299e4587769d9fc79f44519fbec59ef01da7d7 Mon Sep 17 00:00:00 2001 From: Nick Fisher Date: Mon, 4 Mar 2024 15:40:44 +0800 Subject: [PATCH] add stopAnimationByName --- lib/filament_controller.dart | 2 ++ lib/filament_controller_ffi.dart | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/lib/filament_controller.dart b/lib/filament_controller.dart index 954a7603..59bf2f5f 100644 --- a/lib/filament_controller.dart +++ b/lib/filament_controller.dart @@ -365,7 +365,9 @@ abstract class FilamentController { Future setAnimationFrame( FilamentEntity entity, int index, int animationFrame); + Future stopAnimation(FilamentEntity entity, int animationIndex); + Future stopAnimationByName(FilamentEntity entity, String name); /// /// Sets the current scene camera to the glTF camera under [name] in [entity]. diff --git a/lib/filament_controller_ffi.dart b/lib/filament_controller_ffi.dart index 5a69a3c8..925611ac 100644 --- a/lib/filament_controller_ffi.dart +++ b/lib/filament_controller_ffi.dart @@ -950,6 +950,12 @@ class FilamentControllerFFI extends FilamentController { _sceneManager!, entity, index, loop, reverse, replaceActive, crossfade); } + @override + Future stopAnimationByName(FilamentEntity entity, String name) async { + var animations = await getAnimationNames(entity); + await stopAnimation(entity, animations.indexOf(name)); + } + @override Future playAnimationByName(FilamentEntity entity, String name, {bool loop = false,