首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Infer.NET安装到Unity 2018.3

如何将Infer.NET安装到Unity 2018.3
EN

Stack Overflow用户
提问于 2019-05-07 09:21:07
回答 1查看 802关注 0票数 1

我有一个新的统一项目,按照在统一中使用.NET 4.x中的说明,我从画廊下载了Microsoft.ML.Probabilistic.Compiler NuGet包,并将DLL复制到资产/插件中。在这个联合输出错误消息之后

程序集'Assets/Plugins/Microsoft.ML.Probabilistic.Compiler.dll‘不会因为错误而加载:无法解析引用“Microsoft.ML.Probabilism”。程序集是否丢失或与当前平台不兼容?

我下载并复制了缺失的DLL和下面每一个缺失的DLL依赖项。

  • Microsoft.ML.Probabilistic.dll
  • System.CodeDom.dll
  • Microsoft.CodeAnalysis.CSharp.dll
  • Microsoft.CodeAnalysis.dll
  • System.Collections.Immutable.dll
  • System.Reflection.Metadata.dll

添加System.Reflection.Metadata.dll后,统一不再显示错误。

当我加上

代码语言:javascript
复制
using Microsoft.ML.Probabilistic;
using Microsoft.ML.Probabilistic.Compiler;

对于脚本,该项目在中构建得很好,但是当我尝试使用库(即Microsoft.ML.Probabilistic.Compiler.Variable<T>类)时

代码语言:javascript
复制
using UnityEngine;
using Microsoft.ML.Probabilistic;
using Microsoft.ML.Probabilistic.Compiler;

public class Main : MonoBehaviour {
    void Start () {
        Variable<bool> firstCoin = Variable.Bernoulli (0.5);
    }
}

统一和都失败了

资产/脚本/Main.cs(7,3):错误CS0246:无法找到类型或名称空间名称'Variable<>‘(您是缺少一个使用指令还是程序集引用?)

资产/脚本/Main.cs(7,30):错误CS0103:名称“变量”在当前上下文中不存在

-r:Microsoft.ML.Probabilistic.Compiler.dll添加到资产/mcs.rsp文件将生成一个错误

微软(注册商标)视觉C#编译器版本2.9.1.65535 (9d34608e)版权(C)微软公司。版权所有。 错误CS0006:无法找到元数据文件“Microsoft.ML.Probabilistic.Compiler.dll”

项目配置是

  • 团结2018.3.10f1
  • Visual Studio for Mac社区
  • 构建设置/平台: iOS
  • 播放器设置/脚本运行时版本:.NET 4.x等效

不管我是否设置

  • 播放器设置/Api兼容性级别:.NET 4.x

  • 播放器设置/Api兼容性级别:.NET标准2.0

其他设置则留给它们的默认值。

如指南所示,我还没有将DLL添加到Visual中的vs-项目中

Visual每次打开统一项目时都会重新生成.csproj和.sln文件。因此,无法在Visual中直接添加程序集引用,因为它们在重新打开项目时会丢失。相反,必须使用名为mcs.rsp的特殊文本文件: 在团结项目的根目录中创建一个名为mcs.rsp的新文本文件。 在空文本文件的第一行上,输入:-r:System.Net.Http.dll,然后保存该文件。您可以将"System.Net.Http.dll“替换为可能缺少引用的任何包含的程序集。 重新启动统一编辑器。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-17 13:22:59

Variable<bool>既不是Probabilistic也不是Probabilistic.Compiler的一部分

相反,您需要包括using Microsoft.ML.Probabilistic.Models;Variable<T>是其中的一部分。

代码语言:javascript
复制
using UnityEngine;
using Microsoft.ML.Probabilistic.Models;//we need Probabilistic.Models

public class SomeScript : MonoBehaviour
{
    void Start()
    {
        Variable<bool> firstCoin = Variable.Bernoulli(0.5);
    }
}

用统一2018.3和2019.1测试了这一点,这两种方法都是用.net 4.x运行时进行的,而且它构建得很好(尽管在Windows上,它不会产生什么影响)。

..。并将DLL复制到资产/插件。在这个联合输出错误消息之后

我个人不需要这么做才能让它发挥作用。我使用NuGet将包直接从Install-Package Microsoft.ML.Probabilistic.Compiler -Version 0.3.1810.501下载到默认目录(project/Packages/)。它也不需要我下载任何额外的DLL的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56019411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档