Is there a good resource that teaches how to create my plugin?

I want to modify my animation files and do the same processing for each animation, such as clearing the Hip data, extracting the Root Motion data, etc. I want to learn how to make a plugin for it. I created an Editor Standalone Window Plugin, but I am stuck at the first step, how to create a window that can let me select my animation files. I believe my problem is not only this one. So I want to learn how to write a plugin systematically.

Are there any relevant resources for me to learn?

I would suggest Project Lyra which uses a lot of plugins that can let you understand how it works.

Plugins are a way that allows you to modularize your code, and have the engine handling the loading/activation of it.

Here is a good write up of what they are, how they work and and what restrictions regarding dependencies exist

Other than that, what you do in the plugin code, has not relation with it being a plugin. This includes the UI for any tool or system you want to implement. Therefore I recommend you to search information about what you want to do exactly (ignoring the fact you are working on a plugin).

Regarding user interface, Editor tools are usually implemented in C++, with their UI written using Slate in C++. A handy way to find a code example you can use as a reference to replicate is to use the widget reflector tool. That allows you to inspect the editor’s UI, and see which C++ class is responsible from creating it. Once you find that, you can look at the code to see how implement your our version (or maybe it is part of an module you can re-use).

If what you want to do is doable via Blueprint APIs, an easier route (specially for the UI side), is to implement a Editor Utility Widget, as you can use UMG to implement the user interface.

Editor Utility Widgets in Unreal Engine | Unreal Engine 5.5 Documentation | Epic Developer Community .

Thanks, will take a look!

Thanks for the information! I understand I don’t need a plugin for this, but I want to learn how to create them in general just to expand my knowledge base. Thank you again!