Nearly perfect sync between transform and animation, but not sure how to replicate that reliably.

This commit is contained in:
Zed A. Shaw 2026-01-30 23:57:02 -05:00
parent d4e79f1d3d
commit 34e4a34f65
4 changed files with 4 additions and 9 deletions

View file

@ -55,7 +55,7 @@ namespace animate2 {
if($sequence.subframe > 0.9) $sequence.subframe = 0.0f; if($sequence.subframe > 0.9) $sequence.subframe = 0.0f;
frame_change = true; frame_change = true;
} else { } else {
$sequence.subframe = std::lerp($sequence.subframe, 1.0, $sequence.timer.alpha * $transform.ease_rate); $sequence.subframe = std::lerp($sequence.subframe, 1.0, $sequence.timer.DELTA * $transform.ease_rate);
fmt::println("subframe: {}, alpha: {}", $sequence.subframe, $sequence.timer.alpha); fmt::println("subframe: {}, alpha: {}", $sequence.subframe, $sequence.timer.alpha);
} }
@ -70,7 +70,6 @@ namespace animate2 {
} }
void Animate2::update() { void Animate2::update() {
// $sequence.subframe += $transform.speed;
update_frame(); update_frame();
} }

View file

@ -52,7 +52,6 @@ namespace animate2 {
bool simple{true}; bool simple{true};
bool flipped{false}; bool flipped{false};
float ease_rate{0.5f}; float ease_rate{0.5f};
float speed{0.1f};
bool scaled{false}; bool scaled{false};
bool stationary{false}; bool stationary{false};
// these can handled by the onLoop, same as ganim8 does it // these can handled by the onLoop, same as ganim8 does it

View file

@ -39,7 +39,6 @@ Animate2 crafter() {
.simple{false}, .simple{false},
.flipped{false}, .flipped{false},
.ease_rate{0.5f}, .ease_rate{0.5f},
.speed{0.02f},
.scaled{true}, .scaled{true},
.stationary{true}, .stationary{true},
.toggled{false}, .toggled{false},

View file

@ -157,7 +157,7 @@ animate2::Sheet sheet{
animate2::Sequence sequence{ animate2::Sequence sequence{
.frames{0,1,0,1}, .frames{0,1,0,1},
.durations{166ms, 266ms, 166ms, 266ms} .durations{500ms, 266ms, 100ms, 100ms}
}; };
animate2::Transform scale_tr{ animate2::Transform scale_tr{
@ -167,13 +167,12 @@ animate2::Transform scale_tr{
.max_y{0.8f}, .max_y{0.8f},
.simple{false}, .simple{false},
.flipped{false}, .flipped{false},
.ease_rate{0.5f}, .ease_rate{1.0f/0.2f},
.speed{0.02f},
.scaled{true}, .scaled{true},
.stationary{true}, .stationary{true},
.toggled{false}, .toggled{false},
.looped{true}, .looped{true},
.easing = ease2::out_circle, .easing = ease2::in_out_back,
.motion = ease2::move_rush, .motion = ease2::move_rush,
}; };
@ -185,7 +184,6 @@ animate2::Transform move_tr{
.simple{false}, .simple{false},
.flipped{false}, .flipped{false},
.ease_rate{2.5f}, .ease_rate{2.5f},
.speed{0.02f},
.scaled{true}, .scaled{true},
.stationary{true}, .stationary{true},
.toggled{false}, .toggled{false},