制作插件使用到了第三方库,后面很长时间没有用这个插件,导致插件启用不了,吃亏了,所以记录下制作过程。
第一步:
在继承
ModuleRules的C#脚本里添加代码:
private string ModulePath { get { return ModuleDirectory; } } private string ThirdPartyPath { get { return Path.GetFullPath(Path.Combine(ModulePath, "ThirdParty")); } }
然后在添加模块的代码区域添加:
//PublicIncludePaths为 通向此模块内部包含文件的所有路径的列表,不向其他模块公开(至少有一个包含到Private 路径,如果要避免相对路径,则会更多) PublicIncludePaths.Add(Path.Combine(ThirdPartyPath, "include")); //附加库列表,PublicAdditionalLibraries是一组包含其他预编译库的列表(.lib文件的名称列表,包含后缀)... PublicAdditionalLibraries.Add(Path.Combine(ThirdPartyPath, "lib", "Yr-Ar.lib"));
这一步是让模块找到要使用的第三方库,其实和C++项目,导入头文件和lib文件是差不多的,只是这里使用的是C#代码导入。
第二步:
在测试脚本或项目脚本添加头文件,就和正常的模块使用差不多。到这一步,如果代码没写错就可以编译成功了,但是下一步最坑。
第三步:
把项目用到的dll,包括这个库引用的dll,放入:项目\Binaries\Win64。这一步很重要,不然就会启动不了,会报错:游戏模块“xxx”无法被加载。
标签:插件,lib,自定义,Combine,模块,UE5,Path,ThirdPartyPath From: https://www.cnblogs.com/zjr0/p/18338273