【问题标题】:How can I use the third party library, Eigen, in Unreal Engine?如何在虚幻引擎中使用第三方库 Eigen?
【发布时间】:2021-11-01 09:33:43
【问题描述】:

我正在开发 UE4 插件并想使用 Eigen 库。 UE4 似乎已经集成了该库,您可以在 Engine>Source>ThirdParty>Eigen 中看到该库。

我查看了其他插件,例如 AlembicImporter,以获得指导。为了使用 Eigen,我看到他们在 build.cs 文件中添加了"Eigen",并在使用 Eigen 的源文件中写入了#include <Eigen/...>,其中... 可以是 Dense、SVD、Sparse 等。

我试过这个,但是当我构建我的项目时,我得到了错误

fatal error: 'Eigen/Dense' file not found

(同样,我尝试使用的任何 Eigen/... 都会出错)

【问题讨论】:

  • 这是一个公平的问题。 Unreal 文档说使用内置的第三个库很方便。然而人们不知道怎么做。问题已添加书签!
  • 模糊地记得 UE4 具有精简版的 Eigen,但如果您使用与其他引擎模块相同的包含,那么它应该可以工作。你已经安装了引擎源?您是否尝试将 Eigen 添加为模块或私有包含目录?

标签: c++ eigen unreal-engine4


【解决方案1】:

看起来预构建的 UE4 不包含“已编译”的 Eigen 标头(“Dense”、“Sparse”等),但它确实包含 Eigen“src”文件夹。

如果您从源代码编译引擎,您应该在第三方文件夹中安装完整的 Eigen。然后,您可以像各种引擎插件一样使用它。但是从源代码编译 Unreal 有点痛苦,而且需要大量的硬盘空间。这也会阻止您以源代码形式分发您的插件,因为普通用户无法使用 Eigen。

在您的插件中包含 Eigen 的本地副本可能是最简单的 - 它只是标题,因此您可以在 build.cs 中仅使用私有包含路径包含它。

【讨论】:

    猜你喜欢
    • 2018-11-28
    • 2019-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-01
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多