Use a different icon for eased keyframes in the animation editor

This makes easing tracks easier to recognize, in a way similar
to curved lines in the Path2D editor.
This commit is contained in:
Hugo Locurcio 2021-11-13 20:07:19 +01:00
parent a79e4d0ae5
commit 9381b236ab
No known key found for this signature in database
GPG key ID: 39E8F8BE30B0A49C
3 changed files with 7 additions and 0 deletions

View file

@ -2191,6 +2191,11 @@ void AnimationTrackEdit::draw_key(int p_index, float p_pixels_sec, int p_x, bool
Ref<Texture> icon_to_draw = p_selected ? selected_icon : type_icon; Ref<Texture> icon_to_draw = p_selected ? selected_icon : type_icon;
if (animation->track_get_type(track) == Animation::TYPE_VALUE && !Math::is_equal_approx(animation->track_get_key_transition(track, p_index), 1.0f)) {
// Use a different icon for keys with non-linear easing.
icon_to_draw = get_icon(p_selected ? "KeyEasedSelected" : "KeyValueEased", "EditorIcons");
}
// Override type icon for invalid value keys, unless selected. // Override type icon for invalid value keys, unless selected.
if (!p_selected && animation->track_get_type(track) == Animation::TYPE_VALUE) { if (!p_selected && animation->track_get_type(track) == Animation::TYPE_VALUE) {
const Variant &v = animation->track_get_key_value(track, p_index); const Variant &v = animation->track_get_key_value(track, p_index);

View file

@ -0,0 +1 @@
<svg height="10" viewBox="0 0 10 10" width="10" xmlns="http://www.w3.org/2000/svg"><rect fill="#5fb2ff" height="9.999999" rx=".948002" stroke-width="1.2427" width="9.999999" x=".000001" y=".000035"/><rect fill="#003e7a" height="5.628136" rx=".533549" stroke-width=".699406" transform="matrix(.99989481 .01450427 .01450427 .99989481 0 0)" width="5.628136" x="2.115027" y="2.114924"/></svg>

After

Width:  |  Height:  |  Size: 389 B

View file

@ -0,0 +1 @@
<svg height="10" viewBox="0 0 10 10" width="10" xmlns="http://www.w3.org/2000/svg"><rect fill="#e0e0e0" height="8.000001" rx="1.000032" ry="1.00003" stroke-width="1.3109" transform="rotate(-90)" width="8.000016" x="-9.000016" y=".999999"/></svg>

After

Width:  |  Height:  |  Size: 246 B