Отладка в Unity (C#) + Visual Studio Code работа на OS X?



Мне очень нравится идея работы с Visual Studio, C# и Unity на OS X.



Кто-нибудь делал отладку с C# в Unity, работая с кодом Visual Studio на OS X?

1054   8  

8 ответов:

Привет Решение https://github.com/dotBunny/VSCode этот плагин работает как на MacOS, так и на Windows и предоставляет вам следующие возможности:

* опция для включения интеграции VS Code (редактор - > активы - > включить интеграцию), это обновляет файлы решения и (что более важно) сохраняет их в синхронизации. Это также устанавливает предпочтительный редактор внешних инструментов в настройках Unity. * Обратите внимание, что старая опция "Sync MonoDevelop" теперь исчезла в редакторе Unity из У5.2

* он записывает необходимые (и иногда трудно найти) файлы конфигурации VS Code, включая возможность скрывать" некодовые " файлы в Редакторе (скрывает такие вещи, как .ФСЛ, .csproj и вездесущее единство .мета файлы) Есть несколько других настроек, которые помогут ускорить интеграцию.

* автоматически запускает VS-код непосредственно в папку проекта, каждый раз. вам больше не нужно беспокоиться о том, чтобы держать это окно открытым или переключаться, если вы работа над несколькими проектами

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

unity_plugin

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

В данный момент вам необходимо загрузить файлы плагина из GitHub

Да, это работает абсолютно нормально. Unity - это C#, JavaScript или Boo. Так что для этого вам не нужен .NET. Юнити использует моно во время выполнения. Таким образом, существующий проект VS можно открыть в Unity для Mac OS X.

Править

Вот ссылка, которая поможет вам подключить отладчик к конечной точке VS. http://www.yunspace.com/2015/01/19/integrating-visualstudio-with-unity3d-on-mac-using-vstools/

Вы можете попробовать VS Tools for Unity тоже. http://unityvs.com

Обновление

Есть этот удивительный Unity Plugin от dotBunny, который решает эту проблему и интегрирует код с инструментами Unity.

Существующее решение Visual Studio можно построить и отладить с помощью кода Visual Studio на Mac с помощью Mono. Вы должны использовать запуск.json и задачи.файлы json. Я описал это в своем блоге: Compile и Debug

Введите описание изображения здесь

Чтобы построить Unity в Visual Studio Code, Вы можете подключить Mono xbuild компилятор в качестве средства запуска задач, так что вам даже не нужно оставлять IDE, чтобы иметь ошибки и предупреждения.

См. https://twitter.com/_eppz/status/846859856787259392 для большего.

Она немного нестабильна. Но это возможно из последней версии VSC.

1) Установите этот плагин VSC Unity. https://github.com/dotBunny/VSCode/

2) следуйте этим командам. (Шаг 1, 2 и 3) https://code.visualstudio.com/Docs/runtimes/unity

3) после завершения настройки запустите VSC с помощью меню Unity.

Assets/Open C# Project in Code

4) играйте в проект Unity. Вы можете увидеть номер порта отладки на консоли unity. И проект тоже. запуск.файл json будет обновлен автоматически.

Открыть запуск.json, щелкните значок опции. Введите описание изображения здесь
файл существует в этой папке.

.vscode/launch.json

Образец.

{
    "version":"0.1.0",
    "configurations":[ 
        {
            "name":"Unity",
            "type":"mono",
            "address":"localhost",
            "port":56621
        }
    ]
}

5) запустите отладку на вкладке VSC debug.

Вот и все. Надеюсь, это поможет.

[февраль 2017]теперь это можно сделать без плагина dotBunny.

То есть поддержка встроена в единство изначально.

Просто повторяю, вам не нужно возиться с Unity, просто VSCode.

Инструкции здесь

Инструкции, однако, неполные, и я не делал скриншотов (пожалуйста, сделайте!), но в основном то, что я сделал, было:

(...и, пожалуйста, улучшайте эти инструкции по мере того, как вы идете, я работаю по памяти...)

  1. я удалил / переименовал мой .vscode / запуск.файл json, согласно ссылке.
  2. дважды щелкните по какому-либо файлу, чтобы открыть проект в VSCode (возможно, сначала убедитесь, что в настройках Unity вы выбрали VSCode в качестве редактора кода по умолчанию)
  3. щелчок по значку ошибки, а затем по шестеренке, согласно ссылке.
  4. мне пришлось установить этот плагин VSCode-unity-debug в VSCode, просто отфильтровав поиск с помощью "unity".
  5. Затем мне пришлось нажать на зеленый треугольник "play".
  6. я установите точку останова в моем коде.
  7. Теперь по поводу единства и нажмите кнопку воспроизведения и останова получает удар.

Отладчик Unity для кода Visual Studio работает, но пока недостаточно хорошо работает при выполнении какой-либо серьезной работы. Я очень надеюсь, что они улучшат его в будущем, так как я предпочитаю VS-код вместо VS.

Текущие проблемы, с которыми я столкнулся - Иногда я не могу войти в функцию, отладчик будет висеть, пока вы не отсоедините - нет локальной переменной, вы должны смотреть все - некоторые более сложные переменные не имеют поддержки, поэтому вы не можете видеть, что находится внутри - Немного общая нестабильность с неожиданное поведение.

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

Проблемы с ним слишком ограничены, поскольку он в настоящее время стоит, мне пришлось вернуться к классической Visual Studio.

Update, 2016-петиция была достаточно популярна, чтобы для нее были написаны некоторые расширения кода VS: https://marketplace.visualstudio.com/search?term=unity&target=VSCode&sortBy=Relevance


Ходатайство об этом на странице Visual Studio UserVoice: http://visualstudio.uservoice.com/forums/293070-visual-studio-code/suggestions/7752702-unity-integration

Comments

    Ничего не найдено.