Editor Module vs Plugins

Simple question here,

I’m wondering as to what are the main differences between an editor module and a plugin. I know the basics like Plugins are more ‘standalone’ as they are meant to be used in any project, but editor modules are more for project-specific engine modifications. Is there anything else that I should take into mind?

Essentially there is a ‘standalone window’ plugin that you can easily create when you go to Plugins->New in-engine, so what I want to do is replicate this basic functionality except for an editor module instead of a plugin.

At first I thought it would be mostly copying from the auto-generated source code of the ‘standalone window’ plugin but there are lots of stuff that seem plugin specific such as the use of IPluginManager.h, so I’m wondering what key differences there are between a plugin and editor module so I can figure out how to approach this

This build system overview is the best place to learn what a module is. Prior experience with programming will be useful, it’s not super detailed.

A plug-in is much more than a single module, with the primary goal being binary redistribution of a set of engine modules and/or engine content. So while an engine module will only ever contain code, a plugin can contain both code and content (uassets!). Plugins can also be distributed without source code, so if you want to distribute a binary version of a module, you would make a plugin that to do so. More details on plugins here.

If you just want to write some code and link in the UE4 codebase, make a module. If your aims are grander, look into plugins.

1 Like

Ye went with module and it’s all functioned as I hoped, definitely going to check those sources up, thanks!

How can a plugin be distributed without source code?
I delete the source fold,but it did not work