Реклама

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

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

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

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

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

instagram viewer

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

С введением C # система заданий и ECSUnity продвигает то, что можно сделать с 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, вероятно, не язык для вас 4 причины, почему Python не является языком программирования для васЯзык программирования Python чрезвычайно популярен, но вот несколько причин, по которым вы можете избежать Python. Подробнее , но это возможно. В своем блоге Microsoft Developer Community Чарли Калверт обрисовывает в общих чертах как запустить 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's Asset storeВы можете импортировать его прямо в свои проекты.

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

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

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

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

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

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

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

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

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

Хотя это не единственный вариант, Unity - это всего лишь один двигатель, и существует множество варианты программного обеспечения для разработки игр 5 бесплатных программных инструментов для разработки игрБесплатное программное обеспечение для разработки игр - отличный способ начать создавать видеоигры. Мы собрали лучшее игровое программное обеспечение на рынке. Подробнее выбирать из.

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