前言
项目中存在需求要在UE4工程中引入GDAL,来进行一些二维的几何运算:
UE4中如果调用静态库在网上的资料还是挺多的,这里记录一次目的为了加深自己的记忆
准备的材料为GDAL3.5.1,并且带GEOS。
一、使用步骤
1.将文件复制进工程
在UE4打开需要集成GDAL的项目
选择在资源管理器中打开文件夹
回到工程一级目录
进入source-当前工程代码文件夹
创建文件夹ThirdParty
将编译好的gdal的三个目录给丢进thirdparty里
同时,将bin目录的dll内容复制工程目录下的binaries目录中
2.编辑BUILD.CS文件
回到VS界面,找到工程的build.CS文件
public Project3(ReadOnlyTargetRules Target) : base(Target)
{
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });
PrivateDependencyModuleNames.AddRange(new string[] { });
//以下是集成GDAL的相关代码
//第三方库的位置存在于工程下->include(头文件),lib(库文件),bin(可执行文件)
string IncDir = Path.Combine(ModuleDirectory, "ThirdParty/include");
string LibDir = Path.Combine(ModuleDirectory, "ThirdParty/lib");
string DllDir = Path.Combine(ModuleDirectory, "ThirdParty/bin");
//头文件路径加入UE4环境
PublicIncludePaths.Add(IncDir);
//库文件路径加入UE4环境
foreach (string file in Directory.GetFiles(LibDir))
PublicAdditionalLibraries.Add(file);
//动态库路径加入UE4环境
foreach (string file in Directory.GetFiles(DllDir))
{
RuntimeDependencies.Add(file);
//延迟加载DLL
string filename = Path.GetFileName(file);
PublicDelayLoadDLLs.Add(filename);
}
//如果不加这个,编译到GDAL的时候会报错
bEnableUndefinedIdentifierWarnings = false;
}
最后回到UE4的界面中,点击编译。等待编译完毕即可
总结
好像也没啥能总结的,UE4也是才开始学,等到有点心得了再回来补充吧。