如何在Unreal Engine中使用第三方库Eigen?
How can I use the third party library, Eigen, in Unreal Engine?
我正在开发 UE4 插件并想使用 Eigen 库。貌似UE4已经集成了库,可以在Engine>Source>ThirdParty>Eigen中看到。
我查看了其他插件,例如 AlembicImporter,以寻求指导。要使用 Eigen,我看到他们在 build.cs 文件中添加 "Eigen"
并在使用 Eigen 的源文件中写入 #include <Eigen/...>
,其中 ...
可以是 Dense、SVD,稀疏等
我试过了,但是当我构建我的项目时,我得到了错误
fatal error: 'Eigen/Dense' file not found
(同样,我尝试使用任何 Eigen/...
时都会出错)
看起来预构建的 UE4 不包含“已编译”Eigen headers(“Dense”、“Sparse”等),尽管它确实包含 Eigen“src”文件夹。
如果您从源代码编译您的引擎,您应该在 ThirdParty 文件夹中安装完整的 Eigen。然后您可以像使用各种引擎插件一样使用它。但是从源代码编译 Unreal 有点痛苦,而且需要很多硬盘 space。这也会阻止您以源代码形式分发您的插件,因为普通用户不会使用 Eigen。
在您的插件中包含 Eigen 的本地副本可能是最简单的 - 它只是 headers,因此您可以在 build.cs.[=10= 中仅使用私有包含路径来包含它]
我正在开发 UE4 插件并想使用 Eigen 库。貌似UE4已经集成了库,可以在Engine>Source>ThirdParty>Eigen中看到。
我查看了其他插件,例如 AlembicImporter,以寻求指导。要使用 Eigen,我看到他们在 build.cs 文件中添加 "Eigen"
并在使用 Eigen 的源文件中写入 #include <Eigen/...>
,其中 ...
可以是 Dense、SVD,稀疏等
我试过了,但是当我构建我的项目时,我得到了错误
fatal error: 'Eigen/Dense' file not found
(同样,我尝试使用任何 Eigen/...
时都会出错)
看起来预构建的 UE4 不包含“已编译”Eigen headers(“Dense”、“Sparse”等),尽管它确实包含 Eigen“src”文件夹。
如果您从源代码编译您的引擎,您应该在 ThirdParty 文件夹中安装完整的 Eigen。然后您可以像使用各种引擎插件一样使用它。但是从源代码编译 Unreal 有点痛苦,而且需要很多硬盘 space。这也会阻止您以源代码形式分发您的插件,因为普通用户不会使用 Eigen。
在您的插件中包含 Eigen 的本地副本可能是最简单的 - 它只是 headers,因此您可以在 build.cs.[=10= 中仅使用私有包含路径来包含它]