【发布时间】:2020-05-13 14:07:13
【问题描述】:
我想在 Unity 中使用 VS 2019 进行语音识别,我遇到了一个包含字符串和动作的字典,如下所示:
private Dictionary<string, Action[]> actions = new Dictionary<string, Action[]>();
我使用动作列表是因为我想要比识别简单的单词更复杂。比如:右转或将颜色变为绿色。
但是当我想在这个字典中添加一个元素时:
actions.Add("up", Up); // first line in example
其中 Up 是一个函数:
private void Up()
{
posY += speed;
}
它给了我错误“参数 2:无法从 '方法组' 转换为 'Action[]'”在 Up 下(在示例中我注释第一行的行)。但是,如果我的字典不是使用 Action[] 而是使用 Action(不是数组),它就可以正常工作。
首先,我该如何解决这个问题并摆脱这个错误?其次,有没有更好的高级语音识别方法?我想识别右转并将颜色变为绿色这样的短语。
【问题讨论】:
-
actions.Add("up", new Action[] { Up }); -
好吧
Action!=Action[] -
是的,我知道 Action != Action[] 因为第二个它是一个数组。但我在 C# 方面并不那么先进(我的主要语言是 C++),而且我不知道如何从一个简单的 Action 创建一个 Action 列表。谢谢,它工作得很好。但是您对高级语音识别有什么建议吗?有没有更好的办法?
标签: c# dictionary unity3d action speech-recognition