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

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

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

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


当前回答

这些操作解决了我在Visual Studio 2022中项目的问题

解决1

解决方案 Assembly-CSharp(右键) 加载整个依赖树

修复2

解决方案 Assembly-CSharp 参考文献 双击任意库强制加载

其他回答

2020年更新Visual Studio Community 2019和Unity 2019.3:

以管理员身份打开Visual Studio安装程序,选择修改当前安装并添加“Game development for Unity” 如果你现在在Unity中添加一个新的c#脚本,然后用Visual Studio(自动)打开它,它在窗口顶部的描述不是“Miscellaneous”,而是“Assembly-CSharp”,并且自动完成工作。

我的自动补全也不能工作,因为没有安装Visual Studio Tools for Unity。因此,在安装之后,删除自动生成的Visual Studio文件。其他人说你再次打开文件,问题就解决了,但事实并非如此。

诀窍在于:你不需要双击文件,而是需要在Unity中右键单击“open c# Project”来打开c#文件。

我发现我的解决方案是从visual studio本身创建.cs文件,而不是unity编辑器

右键单击解决方案资源管理器中的项目文件夹 添加>新项目 在右上方的搜索栏中输入“unity” 选择“CSharp MonoBehaviour” 在底部命名你的脚本,然后点击添加

请记住,如果你正在使用ReSharper工具,它将覆盖智能感知并显示它自己的。要改变这一点,在VS上,点击扩展-> ReSharper -> Options -> IntelliSense -> General,然后选择Visual Studio而不是ReSharper。

尝试按Ctrl + Alt + Space(可以在建议补全模式和标准补全模式之间切换)