增加模块
一个插件至少有一个模块
复制一份已有的模块,并在项目的uproject中增加模块信息

也可以按照下里面的文件结构来创建,我为了简单,是直接复制"Extend"模块来的

修改复制模块的文件名,并替换掉文件中的原模块信息


在.cpp中实现模块的一些逻辑,这里演示只保留了一个控的模块
最后在主模块的Target.cs中注册

当然,还有修改 ExtendEditor.Target.cs(如需编辑器支持)
如果是按照Private、Public文件结构来创建的话,[新创建的模块名].Build.cs文件中还需要加上

最后的最后右键单击项目的.uproject文件 Generate Visual Studio Project Files 一下
补档:优化一下TestCreateM.h 与 TestCreateM.cpp内容可以写成下面的方式,目的是为了可在插件的生命周期进行管理


给插件封装模块
在这里我们给“TestPlugin”插件封装了一个“OtherPluginM”的模块

新模块的文件结构与插件原模块的文件结构一样

如果是复制的原模块文件,修改方法同单独的给项目增加模块一样
先在TestPlugin的.uproject中添加模块

替换OtherPluginM.Build.cs内容

替换.h和.cpp内容


最后的最后右键单击项目的.uproject文件 Generate Visual Studio Project Files 一下
插件的封装
在确定写好UE插件后需要再项目的target.cs中添加插件

在编译好后的插件,已经可以copy,paste到其它项目中使用了,当然前提是需要再项目主模块的.build.cs文件中包含进去

如果想要做无源码插件
需要在插件的[plugin].Build.cs中加上两行代码
bUsePrecompiled = true;
PrecompileForTargets = PrecompileTargetsType.None;
然后删除插件source文件中的.cpp源码文件(前提是你已经编译好的插件),然后打包
浙公网安备 33010602011771号