为什么Unity3d不支持System.Numerics

发布于 2022-09-07 08:15:32 字数 817 浏览 16 评论 0

1、问题:

平台:Unity3d 2017.3.1 语言:C#
因为需要引用System.Numerics,但Unity的解决方案项目不支持直接引用dll
所以我从C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6
下找到System.Numerics.dll导入到Assets中,出现了一个报错。(我已在Edit - Project Settings - Player - Other Settings将Script Runtime Version选择为.Net 4.6版本)

2、代码:

clipboard.png
可以看见System.Numerics.BigInteger类可以运转,但是这个报错的dll,似乎会影响到我其他代码。

3、报错信息:

clipboard.png

4、尝试过哪些方法:

我尝试过使用.Net 3.5下的System.Numerics.dll放至Assets中。
目前还没有解决。

5、感谢

C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFramework

在这个目录下可以找到System.Numerics,有兴趣的可以导入到Unity,寻找问题所在。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甲如呢乙后呢 2022-09-14 08:15:32

可以从<Unity安装目录>\Editor\Data\MonoBleedingEdge\lib\mono\4.5中获取System.Numerics.dll和SystemNumerics.Vectors.dll两个文件。

将它们粘贴到Unity Asset文件夹中。

貌似这样就解决了,原因估计是Unity3d不能直接支持.Net Framework的dll吧,这些目录下的Dll是由Mono Developer开发的。

附加步骤:

创建两个文本文件,mcs.rsp and csc.rsp,将下列文字都放入其中。

-r:System.Numerics.dll -r:System.Numerics.Vectors.dll
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文