当我想编辑c# Unity脚本时,它们会在Visual Studio中打开。它应该为所有与Unity相关的代码提供自动补全,但它不起作用。

在这里你可以看到缺失的功能:

可以看到,转换对象没有打开自动完成菜单。

Unity版本:5.5.2f1 Visual studio 2015 安装Visual Studio Tools for Unity


当前回答

对于Windows或macOS:

下载/安装Visual Studio IDE(带有Unity工具)

安装时,确保包含安装

使用Unity开发游戏

然后使用Unity(你可以双击一个c#文件),打开一个新的c#项目,Visual Studio IDE应该会打开你的新项目结构。

从那里,你应该能够看到你在寻找什么。

例如:

Linux(建议):

尝试Monodevelop -附加信息,它提供代码完成/提示。

其他回答

试试这个,

在Unity编辑器的菜单,点击编辑->首选项->外部工具->外部脚本编辑器。将其设置为Visual Studio(您安装的VS版本)。 现在在菜单栏选择编辑->项目设置->播放器设置->其他设置->在配置下->检查API兼容性级别->将其更改为您安装的。net版本。在我的例子中,我将它设置为.Net 4.x

现在如果Visual Studio正在运行,转到Visual Studio,它会要求重新加载项目。重新加载项目。检查它是否工作,如果不能关闭Visual Studio。现在从Unity Editor中打开cs文件,现在它应该工作了。

在重新启动和/或重新安装VS之前,首先尝试打开任何其他项目,看看智能是否工作,如果是这样,那么问题可能在于您当前的项目。首先,最有可能的受害者是带有挂起更新的NUGET包。为了解决这个问题,

右键单击引用 继续管理NUGET包下的NUGET包 继续更新安装更新和重新检查智能

如果您使用Resharper与Microsoft Visual Studio,您需要转到 “扩展-> ReSharper ->扩展管理器”和安装扩展“统一支持”。 就像魔法一样!

尝试组合:Ctrl + Alt + Space

我尝试了所有这些方法,但最终发现我需要在解决方案资源管理器中右键单击解决方案,并添加现有项目,并在windows的资源管理器中找到c#程序集文件。似乎有无数不同的问题会给你这个错误,这可能是最简单的解决方案。如果你在unity中双击脚本,它似乎不会拖动程序集。