View Issue Details

IDProjectCategoryView StatusLast Update
0003450NoesisGUIC++ SDKpublic2026-04-27 12:16
ReporterFrancoisRecisio Assigned Tojsantos  
PriorityhighSeverityminor 
Status assignedResolutionopen 
Product Version3.2.3 
Target Version3.2.14 
Summary0003450: Rive animation cannot be paused
Description

https://www.noesisengine.com/forums/viewtopic.php?t=3348

There is no way to specifically pause a Rive animation.
Also, a Rive animation should depends to view update time (IView::Update) (like any other animations).

PlatformAny

Activities

jsantos

jsantos

2024-12-10 16:58

manager   ~0010206

Patch proposed by Francois to the animation when control is not visible

RiveControl.cpp.patch (560 bytes)   
Index: Native/Src/Packages/App/RiveBase/Src/RiveControl.cpp
===================================================================
--- Native/Src/Packages/App/RiveBase/Src/RiveControl.cpp	(revision 14784)
+++ Native/Src/Packages/App/RiveBase/Src/RiveControl.cpp	(working copy)
@@ -667,6 +667,11 @@
 {
     NS_PROFILE_CPU("Rive/Advance");
 
+    if (!GetIsVisible())
+    {
+        return;
+    }
+
     // Update current time
     uint64_t t = Noesis::HighResTimer::Ticks();
     float elapsed = (float)Noesis::HighResTimer::Seconds(t - mTicks);
RiveControl.cpp.patch (560 bytes)   
jsantos

jsantos

2025-06-04 10:24

manager   ~0010776

How are your expectations about the API for play/resume?

I assume at least you will need a DP property for binding, right?

FrancoisRecisio

FrancoisRecisio

2025-06-12 14:30

reporter   ~0010818

Last edited: 2025-06-12 14:35

When I created this ticket I wasn't necessarily thinking of an API, just that "if you update with a delta of 0, the Rive won't animate".
But I had issues with pausing like that.

A dependency property would be great, and functions for play and pause the Rive, without needing to create a specific state in the Rive.
I remember you mentioned the idea of Rive animations being controlled by classic animations (Storyboard etc), I don't know what would be best for you.

Anyway, I always use the patch above, because otherwise the Rive animations are always updated, even when the element is collapsed.

Issue History

Date Modified Username Field Change
2024-07-03 10:41 FrancoisRecisio New Issue
2024-07-04 13:43 jsantos Assigned To => jsantos
2024-07-04 13:43 jsantos Status new => assigned
2024-07-04 13:43 jsantos Target Version => 3.2.5
2024-10-24 12:22 jsantos Target Version 3.2.5 => 3.2.6
2024-11-14 17:42 jsantos Priority normal => high
2024-11-22 18:18 jsantos Target Version 3.2.6 => 3.2.7
2024-12-10 16:58 jsantos Note Added: 0010206
2024-12-10 16:58 jsantos File Added: RiveControl.cpp.patch
2025-01-20 17:42 jsantos Target Version 3.2.7 => 3.2.8
2025-06-04 10:24 jsantos Note Added: 0010776
2025-06-04 10:24 jsantos Status assigned => feedback
2025-06-04 10:24 jsantos Target Version 3.2.8 => 3.2.9
2025-06-12 14:30 FrancoisRecisio Note Added: 0010818
2025-06-12 14:30 FrancoisRecisio Status feedback => assigned
2025-06-12 14:35 FrancoisRecisio Note Edited: 0010818
2025-10-02 00:48 jsantos Target Version 3.2.9 => 3.2.10
2025-10-20 18:25 jsantos Target Version 3.2.10 => 3.2.11
2026-01-20 19:32 jsantos Target Version 3.2.11 => 3.2.12
2026-03-04 00:39 jsantos Target Version 3.2.12 => 3.2.13
2026-04-27 12:16 jsantos Target Version 3.2.13 => 3.2.14