Хотя поддержка Unity в Consulo и появилась в конце 2014 года (первый коммит) — большинство возможностей появилось именно в 2015 году. Ниже описаны значимые фичи, которые были реализованы:
Для тех, кто пропустил мои посты:
Consulo — форк IntelliJ IDEA Community Edition, который имеет поддержку .NET (если быть точным — C#, поддержка которого и развивается в настоящий момент), Java и NodeJS.
Unity Event Methods
В конце 2014 года появилась поддержка маркеров для Unity Event Methods, таких как Update / Start и другие. Так же был добавлен быстрый способ добавления методов через completion (включая методы с параметрами):
Project Import
Это одна из самых больших задач по Unity. До этого момента, не было различия между Unity модулями таких как Assembly-CSharp-firstpass, Assembly-CSharp. Например, везде был доступ к UnityEditor классам — и можно было написать код, который не скомпилируется:
Работа с .meta файлами
До этого изменения — .meta файлы были видны в дереве проекта и скрыть их можно было только через глобальное игнорирование файлов по расширению, однако, это не очень правильно делать, т.к. это не чистая Unity IDE. Дополнительно, возникали проблемы с VCS, т.к. при удалении основных файлов, .meta-файлы оставались. Сейчас реализована следующая логика:
- Вы можете самостоятельно включить/выключить отображение .meta файлов для существующих файлов
- Мета-файлы без родительских файлов отображаются всегда
- При удалении или изменении основного файла через IDE, соответствующий ему мета-файл так же удаляется или изменяется
Отладка в редакторе
Поддержка отладчика присутствовала с самого начала, но ее можно было использовать только для standalone билда игры, т.е. нужно было собрать и запустить игру, вне редактора Unity. Это было не очень удобно и вот, после 15 апреля 2015, можно смело делать attach к редактору, и получать все возможности отладчика (такие как изменения значения переменных в рантайме, или stepping)
ShaderLab
Unity имеет свой язык для написания шейдеров. Была добавлена поддержка синтаксиса, авто-дополнение, навигация внутри файла и базовый рефакторинг.
UnityScript
Хотя C# и преобладает при написании Unity-скриптов, но не стоит забывать о UnityScript. Поскольку поддержка UnityScript базируется на JavaScript-плагине (достаточно сыром), то возможности тут весьма ограничены:
Однако, уже сейчас UnityScript элементы доступны в авто-дополнении внутри C# классов:
C# классы в Unity-сценах
Многим знакома проблема, когда точка останова не работает. Она вроде как есть, но не срабатывает, хотя должна. После того, как вы уверуете в сверхъестественное, окажется, что вы просто забыли разместить класс в сцене. Подобная ситуация — одна из причин добавления возможности отображения, в какой сцене используется данный C# класс. Эта возможность доступна только для YML сцен, бинарные сцены не поддерживаются, поскольку формат файла закрыт, sad but true…
UnityEditor Integration
Ранее не было возможности открытия файла в Consulo по двойному клику в редакторе. Данный плагин призван добавить такую возможность.
Итог
Это почти полный список того что было добавлено в Consulo из Unity. Но помимо Unity развиваются и другие направления:
- C# — многое было переделано, оптимизировано, добавлена поддержка C# 6
- JavaScript и NodeJS — улучшена отладка, появилась поддержка Mocha
- … и многое другое — но это совсем другия история...
Спасибо Всем кто использует Consulo
Комментарии (30)
nomit
03.01.2016 19:40А зачем нужна поддержка С# 6 версии, unity3d на данный момент поддерживает только 3.0 версию?
TimReset
04.01.2016 02:08Добрый день!
Пробовал Consulo пол года назад — функционал понравился, но IDE сильно тормозила через пол часа работы и иногда падала, т.ч. в итоге остановился на VS с Resharper. Но вообще реализация хорошая, только стабильности не хватает.VISTALL
04.01.2016 07:05+1можно было написать мне, и мы б решили эту проблему.
Rathil
05.01.2016 17:06Планируется ли поддержка других языков?
VISTALL
05.01.2016 17:08А конкретно? Сейчас я планирую поднять немного JavaScript в свободное время от C#
Rathil
05.01.2016 17:17Была попытка написания плагина для идеи языка D2, однако затихла…
Если бы этот плагин пошёл… Имхо самая удачная IDE — это как раз эта :)VISTALL
05.01.2016 17:18А можно линк?
Rathil
05.01.2016 17:21VISTALL
05.01.2016 17:24А. D lang, D2 меня запутало. Автор этого плагина притих. Сейчас уже востанавливается работа над плагином Д от другого юзера. Увы думаю он не согласится перейти на Консулу, а я на идею. Тупик. Самим пока делать чтото я не горю, без коммюнити
Rathil
05.01.2016 17:40А можно ссылку на плагин от того пользователя?
Что-то мобильная версия глючит.
InstaRobot
07.01.2016 02:25SublimeText также отлично с Unity3D вяжется. Все достаточно шустро + поддержка сублаймовских расширений. А VS не впечатлил. Очень быстро от него отказался.
TimReset
07.01.2016 12:12А как Sublime дела с дебагом? Autocomplete, навигация по коду?
InstaRobot
07.01.2016 15:22+1Все работает. Просто небольшая начальная настройка сублайма. Вот, я делал по этой статье: blog.zephyr-ware.com/unity-and-sublime
Там подробно весь процесс расписан. Да и для Unity3D, C# есть еще куча плагинов с которыми можно разобраться, я просто не стал ставить за ненадобностью.
Вот пример автокомплита:
COOL_ALMANAH
06.01.2016 09:12Пишу от имени моего коллеги, который является фанатом IDEA. Он говорит, что с удовольствием поддержал бы разработку, если бы было куда переводить деньги. Как вариант, можно сделать PayPal кошелёк или Patreon аккаунт.
VISTALL
06.01.2016 10:00ответил в ЛК
COOL_ALMANAH
06.01.2016 14:11Спасибо за ответ. Как я писал выше, идея про поддержку со стороны пользователей исходила от моего коллеги (он фанат IDEA и сейчас работает с Unity3d, поэтому ваша разработка ему очень понравилась).
Со своей стороны, думаю, было бы очень клёво завести Patreon или PayPal и выложить на GitHub и тут информацию об этом, чтобы все, кто захочет, могли поддержать вас.VISTALL
06.01.2016 14:21Пока с этим проблемы :) Единственный способ что-то узнать — это написать мне. Да и вообще — лучше спрашивать, чем молчать (по поводу багов и всего другого)
Спасибо
likerRr
08.01.2016 23:29Огромное спасибо за этот замечательный продукт. Как только начал разрабатывать на Unity3d первым делом искал IDE на базе IDEA и не могу нарадоваться, что нашел Consulo. Радует оперативная реакция автора и многочисленные фиксы. Сам периодически создаю PR-ы, к сожалению на данный момент могу помочь только этим.
Успехов в развитии продукта! И еще раз большое спасибо за труды
ArXen42
И это круто. Единственная качественная альтернатива MonoDevelop (лично у меня с ним как-то не сложилось, даже на чисто визуальном уровне) под Linux. Спасибо!
P.S. мне бы такую работоспособность…
VISTALL
Спасибо. Но это мой мой максимум. Я сильно ленив
hurricup
Я бы сказал — сильно скромен :)
VISTALL
А лучше то что я сильно часто делаю ошибки :)
VISTALL
Я ошибся. Это не мой максимум, я делаю в свободное время. Это не моя основная работа. Да и ленив сильно