Как поменять ide в unity
Перейти к содержимому

Как поменять ide в unity

  • автор:

Unity Development with VS Code

Visual Studio Code can be a great companion to Unity for editing C# files. All of the C# features are supported and more. In the screen below, you can see code colorization, bracket matching, IntelliSense, CodeLens and that’s just the start.

Read on to find out how to configure Unity and your project to get the best possible experience.

Prerequisites

Install the .NET SDK, which includes the Runtime and the dotnet command.

[Windows only] Logout or restart Windows to allow changes to %PATH% to take effect.

[macOS only] To avoid seeing "Some projects have trouble loading. Please review the output for more details", make sure to install the latest stable Mono release.

Note: This version of Mono, which is installed into your system, will not interfere with the version of MonoDevelop that is installed by Unity.

Install the C# extension from the VS Code Marketplace.

In the VS Code Settings editor ( ⌘, (Windows, Linux Ctrl+, ) ), uncheck the C# extension’s Omnisharp: Use Modern Net setting ( "omnisharp.useModernNet": false ).

Install Build Tools for Visual Studio (Windows only)

The C# extension no longer ships with Microsoft Build Tools so they must be installed manually.

  1. Download the Build Tools for Visual Studio 2022.
  2. Install the .NET desktop build tools workload. No other components are required.

Setup VS Code as Unity Script Editor

Open up Unity Preferences, External Tools, then browse for the Visual Studio Code executable as External Script Editor.

The Visual Studio Code executable can be found at /Applications/Visual Studio Code.app on macOS, %localappdata%\Programs\Microsoft VS Code\Code.exe on Windows by default.

Unity has built-in support for opening scripts in Visual Studio Code as an external script editor on Windows and macOS. Unity will detect when Visual Studio Code is selected as an external script editor and pass the correct arguments to it when opening scripts from Unity. Unity will also set up a default .vscode/settings.json with file excludes, if it does not already exist (from Unity 5.5 Release notes).

Unity version 2019.2 or above

Since 2019.2, it is required to use the Visual Studio Code Editor package. The built-in support for opening scripts from Unity and getting csproj and sln files generated has been removed.

Editing Evolved

With the solution file selected, you are now ready to start editing with VS Code. Here is a list of some of the things you can expect:

  • Syntax Highlighting
  • Bracket matching
  • IntelliSense
  • Snippets
  • CodeLens
  • Peek
  • Go-to Definition
  • Code Actions/Lightbulbs
  • Go to symbol
  • Hover

Two topics that will help you are Basic Editing and C#. In the image below, you can see VS Code showing hover context, peeking references and more.

editing evolved example

Enabling code completion (For recent versions of Unity)

If you are installing VS Code for the first time, you might be missing targeting packs required for Unity’s code-completion (IntelliSense) in VS Code.

Targeting pack download links:

  1. Stop VS Code or Unity running.
  2. Download and install the targeting pack for your targeted framework version / preferred version from one of the above links.
  3. Start Unity.
  4. Create and/or open an existing script in VS Code, through Unity, and you should now see code completions.

Enabling Unity warnings

Unity has a set of custom C# warnings, called analyzers, that check for common issues with your source code. These analyzers ship out of the box with Visual Studio but need to be set up manually in Visual Studio Code.

Due to how Unity handles its .csproj files, it does not seem possible to install packages automatically. You will need to download the analyzers from the NuGet website manually. Make sure to download the .nupkg file, the source code from GitHub will not work.

When you’re done, open the package file using a tool such as 7zip and extract Microsoft.Unity.Analyzers.dll onto your project’s root folder. You can place it inside a folder named NuGet , for example. Do not place it inside Assets or Packages , as that will cause Unity to try to process the .dll , which will make it output an error in the console.

Note: 7zip cannot open a .nupkg file by right-click and Open with. Instead, you have to open the 7zip application, navigate to the file, and then select Extract.

Next, create an omnisharp.json file at the root folder of your project, as explained here. Analyzer support in OmniSharp is experimental at the moment, so we need to enable it explicitly. We also need to point it to the .dll file we just extracted.

Your omnisharp.json file should end up looking like this:

where "./NuGet/microsoft.unity.analyzers.1.14.0/analyzers/dotnet/cs" is a relative path pointing to the folder containing the .dll file. Depending on where you placed it, your path may look different.

The Unity analyzers should now be working in your project. You can test them by creating an empty FixedUpdate() method inside one of your MonoBehavior classes, which should trigger a The Unity message ‘FixedUpdate’ is empty warning (UNT0001).

Note that while it is possible to activate these analyzers, the suppressors they ship with the package (that turn off other C# warnings that may conflict with these custom ones) may not be picked up by OmniSharp at the moment, according to this thread. You can still turn off specific rules manually by following these steps:

  1. Create a .editorconfig file in your project’s root folder (next to Unity’s .csproj files).
  2. Add the following contents to the file:

root=true tells OmniSharp that this is your project root and it should stop looking for parent .editorconfig files outside of this folder.

dotnet_diagnostic.IDE0051.severity = none is an example of turning off the analyzer with ID IDE0051 by setting its severity level to none . You can read more about these settings in the Analyzer overview. You can add as many of these rules as you want to this file.

[*.cs] indicates that our custom rules should apply to all C# scripts (files with the .cs extension).

You are now ready to code in Visual Studio Code, while getting the same warnings as you would when using Visual Studio!

Next steps

Read on to learn more about:

    — Learn about the powerful VS Code editor. — Move quickly through your source code. — learn about the C# support in VS Code

Common questions

I don’t have IntelliSense

You need to ensure that your solution is open in VS Code (not just a single file). Open the folder with your solution and you usually will not need to do anything else. If for some reason VS Code has not selected the right solution context, you can change the selected project by clicking on the OmniSharp flame icon on the status bar.

OmniSharp Flame on the Status Bar

Choose the -CSharp version of the solution file and VS Code will light up.

Choose Solution

How can I change the file exclusions?

Unity creates a number of additional files that can clutter your workspace in VS Code. You can easily hide these so that you can focus on the files you actually want to edit.

To do this, add the following JSON to your workspace settings. By adding these excludes to your workspace settings, you will not change your global user settings and it allows anyone also working on the project to have the same file excludes.

As you can see below this will clean things up a lot.

Before After
Unfiltered files filtered files

To edit this directly within VS Code Settings editor, go to File > Preferences > Settings (Code > Preferences > Settings on macOS). Switch to the Workspace tab and then type "files exclude" into the Settings editor search bar. Add a glob pattern similar to the pattern shown below by clicking the Add Pattern button for the Files: Exclude setting. You will need to add each pattern separately.

Как поменять ide в unity

MonoDevelop, the default Unity C# IDE, is crap. Some people like to use Visual Studio but I’m a heavy JetBrains user so I prefer their C# IDE called Rider.

How to setup Rider for Unity:

  1. Download JetBrains Rider.
  2. Install Rider; the installer will suggest «Unity» plugin, make sure you install it.
  3. Download and install Unity.
  4. Open Unity and open a project.
  5. Edit > Preferences > External Tools , select Rider e.g. «C:\Program Files\JetBrains\Rider 2017.1 RC\bin\rider64.exe» or «/Applications/Rider.app».

On Windows: rest of the setup is easy:

  1. When you first open Rider through Unity, it will install the Rider plugin into your Unity project.

On Mac: you need to install it ourself.

  1. Copy these files into a Assets/Plugins/Editor/JetBrains directory.
  2. Open a code file within Unity UI to startup Rider.
  3. Configure mono binary at Rider > Settings > Build. > Toolset.. > Mono executable , set it to «/Volumes/Extraspace/Applications/Unity 5.6.2/Unity.app/Contents/MonoBleedingEdge/bin/mono» or a variation of that.

Disable auto-save in Rider. Rider will suggest this but auto-saving will cause Unity Editor to recompile every time you switch back to Unity. Disable it from tooltip or through Rider > Settings > Appearance &. > System Settings > Save files on frame deactivation .

Edit Rider settings to your liking. These are my basic settings.

  • Turn off «Namespace does not correspond to file location» inspection.
  • Turn off all code folding.
  • Turn on «Ensure line feed at file end on save».
  • Turn on «Code Style > C# > Other > Line feed at end of file».
  • Turn on «Show whitespaces».
  • Change font to «Menlo», or «Consolas», size 12.
  • Set right margin to 80.
  • Install «GoToTabs» IDE plugin through Settings and bind keys to it.
  • Now IDE will format your code whenever you press Ctrl + Alt + L .

If you want to debug something, add break points to code in Rider and press the bug icon top right of the IDE. This works even if Unity player is running and stopping debugging won’t crash Unity.

Setup edit mode tests. Edit mode tests are unit tests that you can run without starting the game. Unity > Window > Test Runner > Create EditMode test and now you have a folder with a test file NewEditModeTest.cs . You can run tests with the Run All button in Unity > Test Runner .

Theoretically you could run some of the tests inside Rider, but it has been too much hassle for me personally.

For more hardcore tests, use play mode tests. Play mode tests look the same but are run inside Unity Editor play mode or standalone window with the real game context. But they will increase your binary size, to disable play mode tests right click on the «Test Runner» tab and click «Disable play mode tests».

Разработка игры на Unity с нуля до релиза

Хочу заметить, что в данной серии статей я не буду показывать непосредственно разработку игры в игровом движке, я лишь покажу, какие программы использую, покажу их интерфейс, настройку и работу с ними

Но вы тогда могли спросить — «А в чём тогда оригинальность твоей статьи от тысяч других?» И я отвечу — всю разработку мы будем проводить на операционной системе GNU\Linux в дистрибутиве Ubuntu 20.04 LTS! Конкретно у Вас может быть любой другой дистрибутив, но лучше всего будет, если он будет из семейства Debian. Кто читал мою прошлую статью, сразу вспомнят про мой «путь самурая», и сейчас, по многочисленным просьбам, я готов поделиться опытом технической реализации процесса разработки. Также обратите внимание, что это будет цикл статей из разряда «Для самых маленьких в картинках», рассчитанный на читателей начального уровня.

1.1: Полезные сочетание клавиш в Ubuntu

Горячие клавиши очень удобны в работе, поэтому знание хотя бы основных их них может вам облегчить жизнь. Я хотел бы перечислить те, которые использую чаще всего:

Win(Fn/Super)+A — открыть меню с приложениями

Win+Tab — переключение между приложениями

Ctrl+Alt+↑ или ↓ — переключение между виртуальными столами

Win+Space — переключение языка (Или вы можете поменять сочетание клавиш с помощью утилиты, вот ссылка на статью)

F2 — Быстро переименовывать файлы

Ctrl+Alt+T — Открыть консоль

Если знаете ещё, то можете дополнить меня в комментариях. Так же, мой папа заставил сказать, что каждый айтан должен хотя бы минимально знать vi. Вот хорошая ссылка по основным командам этого немолодого, но востребованного текстового редактора.

1.2: Установка программ

Итак, какие же программы нам нужно скачать и установить?

Движок у нас будет Unity, потому что я уже долго с ним работаю, и я был рад, когда узнал о его официальной поддержке GNU\Linux. В роли IDE у нас будет Rider. Очень удобный и эффективный, мне очень нравится, тем, кому он показался тяжеловесным, могу предложить VS Code, у которого на сайте есть инструкция по установке модулей под Unity на GNU\Linux. А для резервных копий или работы в команде будем использовать старый добрый Git с приложениям GitHub Desktop (знаю, выглядит как не «Unix way», но нам важно удобство, а не принципы. Для тех, кому это критично, обратитесь к документации Git с командами для консоли)

Unity:

Переходим на официальный сайт Unity и устанавливаем UnityHub

Сайт Unity

Сайт Unity

Далее заходим в консоль (Ctrl+Alt+T) и пишем cd Загрузки/ — так мы перешли в директорию (папку) Загрузки

Устанавливаем флаг, разрешающий выполнение файла:

И запускаем его

Соглашаемся с правилами

Теперь лайфхак, который сам узнал лишь недавно. Вернемся в консоль и перейдем в директорию с Unity Hub’ом

Консоль

Консоль

И с root правами запускаем INSTALL.sh

Консоль

Консоль

Консоль

Консоль

Вуаля! Теперь вместо того, чтобы лезть всё время в консоль для запуска оболочки, можно просто открыть Меню с приложениями (Win+A) и запускать ее через ярлык!

Перейдём в Unity Hub, Preferens

Unity Hub

Unity Hub

Создайте папку и укажите её расположение, иначе Unity Hub не будет знать куда устанавливать движок, после чего сохраняем настройки.

Unity Hub

Unity Hub

Теперь переходим в Installs и нажимаем Add

Unity Hub

Unity Hub

Выбираем версию Unity, я выбрал 2020.3.30f1 LTS

Unity Hub

Unity Hub

Дальше модули. Устанавливайте какие хотите, тут всё зависит от того, что вам нужно. Для меня это Android и Linux модули

Unity Hub

Unity Hub

Теперь осталось дождаться завершения установки и готово ��

Rider:

Долго быть: самый простой путь — установка пакета из магазина приложений. Для этого запустим Ubuntu Software, найдем там Rider и установим его

Ubuntu Software

Ubuntu Software

Соглашаемся с правилами

Окно соглашения с правилами

Окно соглашения с правилами

Далее запускаем его и устанавливаем плагины

Настройка Rider

Настройка Rider

Выбираем Unity Suppot, Version Controls и Other Settings

Настройка RiderНастройка Rider

Теперь зарегистрируемся. Для этого перейдём в Licenses → Log In

Настройка Rider

Настройка Rider

Нас перекидывает на сайт JetBrains, создадим аккаунт

Создание аккаунта

Создание аккаунта

Мы получим код, который нужно будет вставить в окно Rider’а

Завершение регистрацииЗавершение регистрации

Git и GitHub Desktop

Откроем консоль (Ctrl+Alt+T) и введём sudo apt-get install git тем самым установив контроль версий git.

Перейдем по ссылке и установим .deb (если у вас другой дистрибутив, то другого расширения) пакет с GitHub Desktop — графическим приложением для работы с контролем версий

Вернёмся в консоль и установим приложение с помощью команды sudo dpkg i <имя файла>

Запустим его и зарегистрируемся

На этом 1 часть заканчивается. В следующей части я подробно расскажу о работе в Unity и настройки Build’a под Android. Спасибо, что дочитали до конца! Если будут вопросы, то пишите в комментариях или мне в соц. сети ��

Какую IDE используете?

В недавней статье про ускорение разработки под Unity в Visual Studio 2019 выяснилось, что часть участников сидит на VS, а кто-то на Rider. Интересно посмотреть процентное соотношение.

Использую Rider, но если судить объективно, то единственное, чем он для меня лучше — это что я могу использовать там те же инструменты навигации по коду и горячие клавиши, к которым привык в Intellij Idea.

А как же декомпиляция библиотечных классов?

А VS так не умеет? Тогда да, Rider, получается, еще лучше, декомпилятор я часто использую.

VS только сигнатуры методов показывает и комменты если есть, а тело метода не показывает.

По-хорошему, сигнатур должно хватать при нормальной разработке, но иногда в тело приходится залезать, да.

Там же не написано "Visual Studio без плагинов". Студия с ReSharper не сильно от Rider отличается.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *