首页 > 解决方案 > 当前的 64 位 Unity 2020 是否仍支持 32 位 (x86) 本机 DLL?

问题描述

当前的 64 位 Unity 是否仍支持 32 位 (x86) 本机 DLL?

我有一个大型 x86 DLL 和一个不错的 C API,以及一个在 C# 中完美运行的互操作文件,但在 Unity 中除外。我已经将我能找到的所有选项都设置为 x86,并尝试将其放入 Plugins/x86。

要么它没有找到 DLL,要么它找到它并抱怨我需要将它转换为 64 位。但我不能那样做。

要么(a)某处是我遗漏的关键因素,要么(b)它无法完成并且我的项目已经死了。它是哪一个?一些示例代码或教程会有所帮助。我没主意了。


我的问题的关键是,这只是关于 Unity,而不是关于 x64 与 x86 的一般问题。其他问题无关紧要。

答案是:不,您不能在 Unity 编辑器中使用 32 位 DLL,但是是的,您可以在带有 x86 目标的 Unity 构建中使用 32 位 DLL。Unity 允许您提供多个 DLL 以针对不同的平台,但对于编辑器,它必须是 64 位的。

我认为这是一个合理的问题和有用的答案,我在其他地方没有看到过。我认为它不应该关闭。

标签: unity3dx86interop

解决方案


64 位可执行文件不能调用 32 位 dll,反之亦然。因此,您不能将 32 位插件用于统一编辑器,因为该编辑器仅可作为 64 位平台使用。


推荐阅读