7 языков разработки игр для Unity, которые стоит изучить: какой из них лучше?

7 языков разработки игр для Unity, которые стоит изучить: какой из них лучше?

Разработка игр никогда не была такой простой. Платформы для разработки игр, такие как Unity, позволяют создавать все, от простых 2D-платформеров до полностью детализированных 3D-шутеров от первого лица. Unity бесплатен для небольших разработчиков, и существует множество руководств о том, как лучше всего использовать редактор для прототипирования ваших идей.





Изучение того, как использовать программу Unity, только поможет вам. Настоящим ядром вашей игры будет код, определяющий ее поведение. Может быть сложно решить, какой язык выучить для разработки игр, но в случае с Unity это просто.





почему мой телефон внезапно стал таким медленным?

1. Лучший выбор: C #

Для любого, кто начинает работать с Unity, или для кого-то, имеющего опыт объектно-ориентированного программирования, C # является правильным языком для изучения Unity. Фактически, C # - единственный язык, который стоит изучать для этой платформы, и на то есть веские причины.





Unity использует Mono, кроссплатформенную реализацию платформы Microsoft .NET. C # является основным языком .NET, и все библиотеки Unity построены с использованием кода C #. Сказать, что C # - это язык Unity, не будет преувеличением. Unity ясно дала понять, что они считают C # единственным языком для использования с движком в будущем.

Это хорошая новость, поскольку C # - мощный язык, и его легко освоить. Единство - лишь одно из многих веские причины изучить C # , а если вы новичок, вы можете найти его более доступным. Развивающие игры структурируют обучение, а проектные цели приводят к лучшему пониманию новых предметов.



С введением Система заданий C # и ECS , Unity все больше и больше продвигает то, что можно делать с C #, а новый компилятор Burst делает это быстрее, чем когда-либо прежде.

2. Текущая альтернатива: JavaScript.

Unity также поддерживает JavaScript, известный как UnityScript. С момента выпуска JavaScript соседствовал с C # в качестве полнофункционального языка разработки Unity. В справочнике по сценариям Unity есть примеры кода как на C #, так и на JavaScript для большинства элементов библиотеки.





Это было полезно для разработчиков, имеющих опыт работы с JavaScript, поскольку, несмотря на различия в способе структурирования кода, они могли использовать знакомый синтаксис. Однако была проблема.

Хотя UnityScript похож на JavaScript - это не так. В UnityScript есть классы, чего нет в JavaScript. Такие функции JavaScript, как объявление нескольких переменных и необязательные точки с запятой, недоступны в UnityScript.





Возможно, что очень важно, поиск справки по JavaScript в проектах Unity всегда вызывал путаницу, поскольку большинство людей называли это JavaScript, а не UnityScript. Результаты как для веб-дизайна, так и для разработки игр сливались воедино, и разница между языками была предметом спора для разработчиков, использующих чистый JavaScript.

Возможно, неудивительно, что Unity объявила о прекращении поддержки UnityScript, и теперь существует сроки вывода из эксплуатации . Вы все еще можете использовать JavaScript с Unity, но, зная, что этому скоро придет конец, зачем вам это?

3. Старый третий вариант: Бу

На заре Unity можно было использовать Boo - язык, похожий на Python. Возможно, это неудивительно, поскольку Родриго Б. Де Оливейра, Дизайнер Бу , работал на Unity. Язык совместим с .NET и Mono и будет полностью реализован с игровым движком. Что пошло не так?

Недостаточно людей использовали его, вероятно, предполагая, что он просто пытался имитировать Python. Со временем Unity прекратила поддержку Boo, и предстоящие изменения в UnityScript сделают все старые сценарии Boo бесполезными в Unity. Некоторые могут посчитать это упущенной возможностью, поскольку Boo был отличной попыткой Python-подобного синтаксиса для программирования .NET.

Однако у любителей Python есть и другой вариант.

4. Странный выбор: IronPython

Если вы хотите разрабатывать игры, Python, вероятно, не для вас, но это возможно. В своем блоге сообщества разработчиков Microsoft Чарли Калверт описывает как запустить Python с C # --- но это не для слабонервных. Спустя почти десять лет IronPython все еще находится в активной разработке.

Короче говоря, вам нужно будет скачать Библиотеки IronPython с GitHub и ссылайтесь на них в своем проекте C #. Это позволит вам вызывать сценарии Python из сценариев C # так же, как и любую другую библиотеку. IronPython также позволяет вызов .NET-библиотек из Python . Как бы полезно это ни звучало, поскольку Unity полагается на C #, эта функциональность не помогает.

IronPython - и IronRuby, его родственный проект, связывающий C # с языком программирования Ruby - являются фантастическими проектами, но их нельзя использовать с Unity.

5. Интересный выбор: Lua

Одна из лучших реализаций внешнего языка для Unity - это MoonSharp --- интерпретатор Lua. Этот проект не предназначен для замены C # как языка, он скорее служит мостом. Идеальный вариант использования MoonSharp - добавить возможность игрокам вашей игры создавать игровые моды на языке Lua.

Вы также можете использовать его для описания объектов и уровней дизайна отдельно от кода вашей основной игры.

Если вы уже пишете код на C # и ищете интересный способ взаимодействия с вашим кодом, стоит подумать о MoonSharp. Поскольку он доступен бесплатно на Магазин активов Unity , вы можете импортировать его прямо в свои проекты.

6. Лучший язык для плагинов: C / C ++

Несмотря на надежную библиотеку Unity и все доступные инструменты, которые предоставляет C #, иногда вам могут понадобиться ваши собственные плагины. Основные причины, по которым люди выбирают плагины, включают скорость или доступ к базе кода, уже написанной на другом языке. Встраивание этих сценариев в подключаемые модули DLL позволяет сэкономить на переделке кода и в некоторых случаях может повысить производительность.

В большинстве случаев C ++ будет языком, используемым для создания плагинов, но C будет работать одинаково хорошо. Пока код встроен в DLL, его можно поместить в папку плагинов Unity и ссылаться на него в коде. Однако есть вероятность, что если вы уже освоили кодирование на C / C ++, изучение C # будет относительно простой задачей!

настроить электронную почту icloud на android

7. Новый язык для плагинов: Rust

Rust - это язык, вокруг которого много шума. Опытные программисты любят его за невероятный контроль, который он дает, избегая ловушек, связанных с написанием на менее безопасных языках, таких как C ++. Rust был создан Mozilla в 2009 году, чтобы разработчики могли быстро разрабатывать высокопроизводительное программное обеспечение.

Хотя напрямую написать Rust в Unity невозможно, вы можете получить доступ к функциям и методам, написанным на Rust, из вашего кода Unity. Джим Флеминг подробно описывает, как это сделать в своем посте на Medium .

Если это кажется знакомым, это потому, что это еще один способ создания собственных плагинов. Используя способность Rust взаимодействовать с другими языками, вы можете вызывать функции Rust непосредственно из кода C #, используя Unity's DllImport атрибут. Естественно, есть несколько промежуточных шагов, и читая следующий пост Джима наряду с получением хорошего понимания FFI (интерфейсов внешних функций) рекомендуется!

Простой выбор

Отношение Unity к любому языку, отличному от C #, ясно, и постоянные улучшения Unity опираются на эту целеустремленность. Добавьте к этому постоянное совершенствование C # как языка программирования Microsoft, и изучение C # для разработки игр на Unity станет легкой задачей. И обязательно загляни Unity Learn - более простой способ изучить разработку игр .

Однако это не единственный вариант, Unity - это всего лишь один движок, и есть множество варианты программного обеспечения для разработки игр выбирать из.

Делиться Делиться Твитнуть Эл. адрес Canon против Nikon: какой бренд камеры лучше?

Canon и Nikon - два крупнейших имени в индустрии фотоаппаратов. Но какой бренд предлагает лучшую линейку камер и объективов?

Читать далее
Похожие темы
  • Программирование
  • JavaScript
  • Разработка игр
  • C
  • Единство
Об авторе Ян Бакли(Опубликовано 216 статей)

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

Ещё от Ian Buckley

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!

Нажмите здесь, чтобы подписаться