Rider для Unity

Более удобный способ писать на C# в проектах Unity

Rider помогает написать очень красивый и более производительный код Unity, управлять режимом игры, анализировать логи, выполнять отладку и тестирование, анализировать покрытие и искать вхождения сущностей в сценах и ассетах.

Мне доставляет удовольствие писать на C# в Rider. Я никогда раньше не видел инструменты рефакторинга кода, которые просто работают, всегда и без исключений. На Rider можно положиться, и это потрясающе.
Йоахим Анте,
технический директор и основатель Unity

Мощный кросс-платформенный редактор для C#

JetBrains Rider — быстрый и мощный редактор C# для Unity, который работает на Windows, Mac и Linux. Непревзойденное количество интеллектуальных механизмов инспекции кода и рефакторинга (более 2500), включенных в Rider, позволяют писать безошибочный код на C# гораздо быстрее.

Легкая интеграция с Unity

В Rider уже встроена поддержка Unity. Когда вы впервые откроете решение Unity, Rider будет автоматически установлен в качестве стандартного редактора для файлов шейдеров и сценариев C#. Впоследствии при двойном щелчке по файлу шейдера или сценарию C# они будут открываться в Rider.

/lp/dotnet-unity/static/rider-183-unity-intro-preview@2x-6e56b743c3f9bc14e1fca2189971d04e.png
Gif

Управление редактором Unity

Благодаря интегрированному механизму двусторонней связи вы можете входить или выходить из режима Play, а также приостанавливать его и продолжать выполнение покадровыми шагами, при этом не покидая Rider. На панели инструментов есть кнопки просмотра игры Play, Pause и Step, которые работают так же, как в редакторе Unity. Небольшая иконка Unity в строке состояния показывает состояние редактора Unity: подключен, обновляет состояние или находится в режиме Play. Любые изменения, внесенные в Rider в режиме Edit, будут сразу же переданы в редактор Unity.

/lp/dotnet-unity/static/rider-183-unity-control-preview@2x-86bb75536244d15782b156d91c87fd96.png
Gif

Советы по коду

Rider предоставляет высококлассный механизм анализа кода C# и содержит как специальные инспекции кода для Unity, так и необходимые быстрые исправления.

Например, Rider предупредит вас об использовании непроизводительной операции сравнения строкового литерала со свойством tag, предложив быстрое исправление в виде вызова CompareTag.

Подобным образом Rider предупредит вас, если вы попытаетесь использовать ключевое слово new для создания нового экземпляра класса, являющегося производным от MonoBehaviour или ScriptableObject. Чтобы Rider устранил эту проблему, просто нажмите AltВвод.

/lp/dotnet-unity/static/rider-183-unity-coding-hints-preview@2x-a4c842e78ce2241182079df27523c671.png
Gif

Удобная отладка Unity

Rider позволяет без проблем осуществлять отладку ваших скриптов C#, когда они выполняются в редакторе Unity. Все необходимые параметры уже настроены, вам нужно лишь нажать сочетание клавиш, команду меню или кнопку Debug на панели инструментов, чтобы подключить отладчик к запущенному редактору Unity. В редакторе можно устанавливать точки останова, исполнять код пошагово, просматривать значения локальных переменных, отслеживать определенные значения, а также вычислять выражения.

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

Запуск тестов Unity

Прямо из Rider можно запускать тесты, взаимодействующие с Unity API и способные выполнять код покадрово. Ну и конечно же, изучать результаты тестов Unity можно так же, как и с обычными тестами, — например, фильтровать по результату и щелкать по трассировкам стека для перемещения по коду.

Журналы консоли Unity

Новое окно инструмента Unity Logs с гиперссылками на трассировки стека позволяет просматривать события, которые регистрируются в консоли редактора Unity. Оно позволяет фильтровать события по категории (ошибка, предупреждение или сообщение), скрывать их в зависимости от того, когда они были зафиксированы (в режиме Play или Edit), а также с легкостью переходить к любому исходному файлу, классу, методу или свойству, упомянутым в записи журнала. Окно Unity Logs автоматически очищается после каждого перехода в режим Play.

Подсветка проблем производительности

Rider позволяет писать более производительный C#-код для Unity. Это достигается путем подсветки ресурсоемких API Unity внутри методов, которые вызываются каждый кадр, таких как Update и корутины. Rider подсвечивает вызовы даже тех методов, которые используют ресурсоемкие API Unity неявным образом.

Помимо этого, Rider оснащен множеством специально предназначенных для Unity инспекций и соответствующих быстрых исправлений. Он способен распознавать паттерны низкопроизводительного кода и может рекомендовать для них автоматические исправления, например использовать перегрузку, кэширование значений или альтернативный API.

/lp/dotnet-unity/static/rider-183-unity-perf-indicators-preview@2x-8f1aa31cb97d7f29b9efd5160553caf0.png
Gif

Поиск вхождений в файлах Unity

Теперь Find Usages включает в себя сцены, ресурсы и префабы Unity. Если вы ищете класс или метод, используемый в качестве обработчика событий, Rider показывает, где он используется в ваших файлах Unity, группируя такие места по типу, наименованию компонента и родительским игровым объектам. Более того, при двойном щелчке на элементе его вхождения подсвечиваются непосредственно в редакторе Unity.

Теперь при извлечении этой информации из файлов Unity Rider корректно подсвечивает методы обработчика событий как неявно используемые. Подсветка неявного использования преобразуется в ссылки Code Vision, что позволяет вам сразу видеть, какие классы, методы и поля неявно используются Unity. При нажатии на такую ссылку будут найдены все вхождения элемента, в том числе в файлах Unity.

/lp/dotnet-unity/static/rider-183-unity-code-vision-yaml-preview@2x-4354d138bd0bee4a94aa23236059d2da.png
Gif

Поддержка шейдеров

Rider теперь также поддерживает файлы .shader, обеспечивая подсветку синтаксиса, сворачивание кода, выделение парных скобок и многое другое. Подсвечиваются синтаксические ошибки в разделах ShaderLab, комментарии типа todo упорядочиваются в окне To Do Explorer, подсветкой также отмечаются цветовые свойства, которые можно редактировать с помощью специального инструмента выбора цвета. Автозаполнение простых слов доступно в рамках всего файла, в том числе в блоках кода Cg/HLSL.

Просмотр документации Unity

Rider отображает внешнюю документацию по идентификаторам Unity. Чтобы перейти к локально установленной документации (или, если она не установлена, к ее онлайн-версии на сайте Unity), вы можете либо щелкнуть иконку из всплывающего окна Quick Documentation (CtrlShiftF1, если используется раскладка Visual Studio), либо непосредственно выполнить действие View External Documentation (ShiftF1).

/lp/dotnet-unity/static/rider-183-unity-docs-preview@2x-a3d41fb8e430938c370d20fe25b5b41d.png
Gif

Узнайте подробнее о RiderFlow — бесплатном инструменте для создания 3D-сцен и управления ими. Он предназначен для всех пользователей редактора Unity — дизайнеров уровней, гейм-дизайнеров, художников и программистов.

Rider

Попробуйте быструю и мощную IDE для разработки .NET-приложений на Windows, macOS и Linux

Бесплатная пробная версия на 30 дней

Клиенты

«Наличие подходящего инструментария исключительно важно для сохранения конкурентоспособности на любом рынке — и особенно в сфере игр. Каждый разработчик в Yakuto имеет подписку на JetBrains Toolbox — важность этого пакета для продуктивной работы, с нашей точки зрения, невозможно переоценить. Основная наша работа ведется в C# на компьютерах Mac. Из-за этого раньше нам требовалась виртуальная машина с ReSharper, но благодаря Rider мы работаем с одной ОС в native-режиме, и это просто здорово. Отладка Unity стала бесшовным процессом, а расширения позволили установить важную контекстуальную связь с Unity. Будучи опытным пользователем ReSharper, я чувствую себя в Rider как дома: рефакторинг, глобальный анализ решения, инструменты запуска тестов — все это у меня под рукой. Мы даже не можем себе представить, как вели бы разработку на C# без Rider».

Джеймс Грэттон
Технический директор, Yakuto

«Rider быстро стала единственной IDE, которую хочется использовать для любых задач разработки на UE4 или Unity. Я экономлю очень много времени благодаря понятным рабочим процессам и доволен интеграцией с P4. Когда руководители видят, как быстро мы движемся от постановки задач к решению, они приходят в восторг от продукта. Rider устраняет все затруднения, мешающие нам делать то, что мы умеем лучше всего, — писать код».

Мэттью Дейви
dotBunny

«Для разработки на Unity мы используем только Rider. Эта IDE экономит кучу времени, превосходно анализируя C#-код и предлагая инспекции и быстрые исправления, специфичные для Unity. Rider всегда предупредит, если мы попробуем использовать ключевое слово new для создания экземпляра класса, производного от MonoBehavior или ScriptableObject. Также нам здорово помогают возможности отладки. Rider – отличный инструмент!»

Эршадул Хок
CEO Riseup Labs

Wooga
Goodgame Studios
KLab
KamaGames
Disruptor Beam
InnoGames
Alawar
Cygames
Присоединяйтесь к компаниям, которые уже пользуются Rider для разработки игр в Unity
Скачать

Универсальность Rider

Rider позволяет разрабатывать десктопные приложения, .NET-сервисы и библиотеки, игры на движке Unity и Unreal Engine, мобильные приложения Xamarin, веб-приложения ASP.NET/ASP.NET Core и многое другое.
Подробнее о Rider