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

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

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

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


当前回答

在Unity中,编辑>首选项>外部工具 单击“重新生成项目文件”。

其他回答

试试这个,

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

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

以上的方法对我来说都没用。然而,我打开ProjectName。CSPROJ文件,并手动添加新文件,它工作得很好

你安装这个?

安装Visual Studio和Unity 下载Visual Studio安装程序,如果已经安装,则打开它。 对于所需版本的Visual Studio,选择“修改”(如果已经安装)或“安装”(对于新安装)。 选择workload选项卡,然后选择Game development with Unity workload。 如果Unity尚未安装,请在安装程序的可选部分中选择Unity Hub复选框。 选择Modify或Install完成安装。

两个备选方案:

解决1

@singleton为我指明了这个方向。而不是在Visual Studio中更改目标,你应该在Unity中更改它,因为项目是自动生成的。

首先删除自动生成的Visual Studio文件: .csproj .user . sln

然后从Unity进入PlayerSettings,在“其他设置”下将“脚本运行时版本”从稳定3.5更改为实验性4.6。

然而,这并没有解决我的问题。

修复2

我注意到所有与Unity相关的代码都带有黄色警告。检查您的错误日志,看看情况是否如此。特别是查看是否得到以下错误:getreferenceNearestTargetframeworkTask

如果是,试试: 再次启动Visual Studio安装程序。

在Build Tools 2017中,单击“修改”,

确保勾选“Nuget目标和构建任务”。如果你点击通用Windows平台开发,这应该会被勾选。

对于Windows或macOS:

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

安装时,确保包含安装

使用Unity开发游戏

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

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

例如:

Linux(建议):

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