你能推荐一个更好的用于 Unity C# 编码的 IDE 吗? [关闭]

Posted

技术标签:

【中文标题】你能推荐一个更好的用于 Unity C# 编码的 IDE 吗? [关闭]【英文标题】:Can you recomment a better IDE for Unity C# coding? [closed] 【发布时间】:2013-06-07 12:40:18 【问题描述】:

当前版本的 Unity 使用非常原始的旧 MonoDevelop 2.8。它不仅不能注册编译错误,我也不知道我可以使用哪种方法。每次我想使用一些内置方法(如OnGUIOnTriggerEnter)时,我都必须手动搜索它们。

由于我来自 IntelliJ IDEA 或 Eclipse 或 VisualStudio 的世界,这是一种非常原始的工作方式。

我尝试将最新的 Unity 与最新的 MonoDevelop 4.0 一起使用,但没有成功。

你能推荐一个我可以与 Unity 一起使用的现代 IDE,我会喜欢编码吗?

【问题讨论】:

为什么不使用 Visual Studio? 你的意思是从Unity3D调用Visual Studio exe? docs.unity3d.com/Documentation/Manual/… 谢谢。您可以将此作为解决方案发布,我会接受您的回答 @RankoR,如果您使用 Mac,我相信您没有其他像 MonoDevelop 的替代品。 【参考方案1】:

2022 年 2 月 8 日更新


JetBrains 骑士


JetBrains 推出了一个新的跨平台 .NET IDE - Rider,内置了类似 resharper 的命令和相当多的功能列表,包括丰富的 Web 开发支持,特别是 Unity

统一支持

与 Unity 编辑器的更深入集成:如果在场景、预制件或资产文件中使用方法/脚本,则从 Find Usages 工具窗口导航到此用法将在 Unity 编辑器中突出显示该用法。 Unity 隐式使用的类、方法和字段的装订线标记图标已移至 Code Vision。 在通过 Rider 中的 Unity 编辑器 运行单元测试之前,检查 Unity 中的编译是否成功。

评论: 我已经使用了一段时间了,我的印象非常好。与 Visual Studio 相比,它更快,并且有一些非常棒的热键组合,更不用说支持 AceJump 和大量其他有用的扩展了。


Visual Studio C# 集成


这个功能能给我带来什么?

更复杂的 C# 开发环境。 想想智能自动完成、对源文件的计算机辅助更改、智能语法突出显示等等。


Express 和 Pro 有什么区别?

VisualStudio C# 2010 是 Microsoft 的产品。它有 Express 版和 Professional 版。 Express 版是免费的,您可以从这里下载:http://www.microsoft.com/express/vcsharp/ 专业版不是免费的,你可以在这里找到更多信息:http://www.microsoft.com/visualstudio/en-us/products/professional/default.mspx

Unity 的 VisualStudio 集成有两个组件:

    Unity 创建和维护 VisualStudio 项目文件。与 Express 和 Professional 合作。 双击脚本时,Unity 会自动打开 VisualStudio,或者 Unity 中出现错误。仅适用于专业人士。

我有 Visual Studio Express,如何使用它?
    在 Unity 中,从菜单中选择 Assets->Sync VisualStudio Project 在 Unity 项目中找到新创建的 .sln 文件(位于 Assets 文件夹上方的一个文件夹) 使用 Visual Studio Express 打开该文件。 您现在可以编辑所有脚本文件,并切换回 Unity 以使用它们。

我有 Visual Studio Professional,如何使用它?

注意:随着 Microsoft 收购 SyntaxTree,Visual Studio Tools for Unity(以前称为 UnityVS)已在 Visual Studio 库中免费发布。

这取代了 Visual Studio Professional 用户的以下步骤,并删除了下面进一步提到的一些注意事项,允许在 VS 中进行调试、高级项目文件集成、带有 VS 的镜像控制台窗口等等。

    在 Unity 中,转到 Edit->Preferences,并确保选择 Visual Studio 作为首选外部编辑器。 双击项目中的 C# 文件。 Visual Studio 应该会自动为您打开该文件。 您可以编辑文件、保存并切换回 Unity。

需要注意的几点:

尽管 Visual Studio 带有自己的 C# 编译器,并且您可以使用它来检查您的 c# 脚本中是否有错误,但 Unity 仍然使用它自己的 C# 编译器来编译您的脚本。使用 Visual Studio 编译器还是很有用的,因为这意味着您不必一直切换到 Unity 来检查是否有任何错误。

Visual Studio 的 C# 编译器比 Unity 的 C# 编译器当前拥有更多的功能。这意味着某些代码(尤其是较新的 c# 功能)在 Visual Studio 中不会出错,但在 Unity 中会出错。

Unity 自动创建和维护 Visual Studio .sln.csproj 文件。每当有人从 Unity 中添加/重命名/移动/删除文件时,Unity 都会重新生成 .sln.csproj 文件。您也可以从 Visual Studio 将文件添加到您的解决方案中。然后 Unity 将导入这些新文件,下次 Unity 再次创建项目文件时,它会在创建时包含这个新文件。

在 AssetServer 更新或 SVN 更新后,Unity 不会重新生成 Visual Studio 项目文件。您可以通过菜单手动要求 Unity 重新生成 Visual Studio 项目文件:Assets->Sync VisualStudio Project


Visual Studio 代码(Windows、macOS、Linux)


Unity 支持在Visual Studio Code(VS Code)中打开脚本。要在 VS Code 中打开脚本,请转到 Unity > Preferences > External Tools > External Script Editor 并选择 Visual Studio Code。有关在 Unity 中使用 VS Code 的信息,请参阅Visual Studio’s documentation on Unity Development with VS Code.

先决条件 要使用 Visual Studio Code 进行 C# 代码编辑和 Unity C# 调试支持,您需要安装:

Mono (only required on macOS and Linux) Visual Studio Code C# Extension Visual Studio Code Debugger for Unity Extension (Not officially supported by Unity)

来源:

http://docs.unity3d.com/Documentation/Manual/VisualStudioIntegration.html https://docs.unity3d.com/Manual/ScriptingToolsIDEs.html


【讨论】:

不幸的是,这不是 OS X 开发人员的选择...... :( 收费,但assetstore.unity3d.com/en/#!/content/3535 获得了出色的评价。 @dudiedood 谢谢,准备将此链接添加到我的答案中。 Script Inspector 现在只需 39 美元,如果您为 Unity 付费,则为 31 美元。我希望他们有免费试用......我太便宜了,不知道我会喜欢它。【参考方案2】:

在 Mac 中 1) Visual Studio 代码 轻量级 支持调试https://code.visualstudio.com/

2) 领事 基于 Intellij IDEA 的 IDE 支持调试https://github.com/consulo/consulo

3) Sublime Text 也可以是你在 Mac 上的选择。

Using Sublime Text as a script editor 也有一些有用的统一包。 (代码完成、语法着色...)ST package for unity3dAnd Video Tutorial

【讨论】:

感谢这篇文章。和很多开发者一样,我想喜欢 sublime text,但是当我尝试安装包时,总是出现问题......再次,我花了 1 小时尝试关注视频,但最后一步没有成功。 blog.jetbrains.com/dotnet/2017/08/30/…【参考方案3】:

您可以使用 MonoDevelop 或 SharpDevelop。我需要强调 .NET 框架中的所有功能,而不是 IDE 中的功能,换句话说,您可以使用文本编辑器和 CLR 编译器,而无需使用任何 IDE。

【讨论】:

以上是关于你能推荐一个更好的用于 Unity C# 编码的 IDE 吗? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

推荐用于 Windows 的 Git 工具 [关闭]

通过代码 (C#) 在 Unity3D 中应用 Prefab 的实例覆盖

通过脚本(C#) Unity5添加组件脚本

unity3d开发语言用哪个更好

Unity:列表变量数组。如何在 C# 中正确声明它

C# 或 Unity 用于跨平台软件开发。需要建议[关闭]