godotengine / godot-proposals

Godot Improvement Proposals (GIPs)
MIT License
1.16k stars 97 forks source link

Add a scrollbox with Filter field to 'Add Animation' lists in AnimationTree #7278

Open Flynsarmy opened 1 year ago

Flynsarmy commented 1 year ago

Describe the project you are working on

A character controller state machine

Describe the problem or limitation you are having in your project

Finding the animation I want to add is difficult when I have a lot of animations. A very common use case is to create Animation Libraries (often from Mixamo) but these can include a lot of animations especially if your character has for example holstered, unholstered, flying, swimming etc animations. image

Describe the feature / enhancement and how it helps to overcome the problem or limitation

the animation list in 'Add Animation' of all AnimationTree node types should be a scrollbox containing a maximum of 10 animations with a search box at the top.

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

Instead of the massive list seen in the screenshot above, only 10 would display and there would be a filter field above them allowing searching. My image editing skills are poor at the best of times but something like this: image

If this enhancement will not be used often, can it be worked around with a few lines of script?

It can be worked around by simply scrolling through the huge list of animations.

Is there a reason why this should be core and not an add-on in the asset library?

Usability improvements really should be core features.

Calinou commented 1 year ago

We don't have a generic "TextEdit with autocompletion" control yet, which we would need to implement this.

If we want to implement this right now, we have to create a dedicated dialog similar to the Quick Open dialog.

Flynsarmy commented 1 year ago

Would this be necessary? I figured the filter field at the top would just make non matching animations in the list below disappear as you type.

GreenCloversGames commented 2 months ago

With FBX importing being now more "click and go", I feel like the amount of users using Mixamo or other downloaded animations in the FBX format will increase, and the large libraries will be more in common.

We don't have a generic "TextEdit with autocompletion" control yet, which we would need to implement this.

If we want to implement this right now, we have to create a dedicated dialog similar to the Quick Open dialog.

I don't see why a "TextEdit with autocompletion" would be needed for this feature, you don't need this for quick load. I think implementing this the same was as quick load, where you simply filter based on what the user types on the top.

Calinou commented 2 months ago

I don't see why a "TextEdit with autocompletion" would be needed for this feature, you don't need this for quick load.

It can be done with a dedicated dialog (as done by Quick Open but also Quick Load). I was referring to the kind of UI precisely shown in the mockups in OP.

A dedicated dialog is sometimes better in terms of UX anyway, considering it can be much wider than a dropdown which usually has to stay narrow (and can't be resized with the mouse).

Flynsarmy commented 2 months ago

I didn't mention anything about auto complete in my post and I don't see how it's in the image either. Any confusion is probably due to my awful image editing skills - my bad!

I literally just wanted a scroll box with filter field at the top.