it-swarm-ru.tech

Какой язык используется для разработки с использованием Unity

Какой язык нужно использовать при программировании с Unity? Или это API для многих языков?

Я прочитал документы, и, думаю, я упустил момент, когда говорил об используемом языке.

В нем говорится, что у него есть развёртывание iOS, позволит ли это программисту писать код для цели C?

Unity - это SDK, который можно использовать для многих платформ или как он работает? В нем упоминается развертывание одного и того же кода на нескольких платформах.

56
jarryd

Насколько я знаю, вы можете пойти с C #.

Вы также можете использовать малопонятный язык "Boo". ( найдено по адресу https://boo-language.github.io/ )

В прошлом (до 2012 года) можно было использовать странный вариант Java, но теперь он устарел и не работает.

Обратите внимание, что Unity собирается для Android/iOS и многих других платформ. Тот факт, что в iOS-программировании используются target-c или Swift, совершенно не имеет значения на уровне Unity3D. Unity программируется с помощью c #.

30
Andreas Wong

Вся разработка выполняется с использованием вашего выбора C #, Boo или диалекта JavaScript.

  • C # не нуждается в объяснении :)
  • Boo - это язык CLI с очень похожим синтаксисом на Python; однако он имеет статическую типизацию и имеет несколько других отличий. Это не "действительно" Python; это просто выглядит похоже.
  • Версия JavaScript, используемая Unity, также является языком CLI и компилируется. Новички часто предполагают, что JS не так хорош, как остальные три, но он скомпилирован и так же быстр и функционален.

Большая часть примера кода в документации написана на JavaScript; если вы будете просматривать официальные форумы и вики, вы увидите довольно равномерное сочетание C # и Javascript. Кажется, очень немногие используют Boo, но это так же хорошо; Выберите язык, который вы уже знаете или изучаете.

Unity берет ваш код C #/JS/Boo и компилирует его для запуска на iOS, Android, ПК, Mac, XBox, PS3, Wii или веб-плагине. В зависимости от платформы, которая может оказаться Objective C или что-то еще, но это совершенно прозрачно для вас. Нет смысла знать цель C; Вы не можете программировать в нем.


Обновление 2019/31/01

Начиная с Unity 2017.2, "UnityScript" (версия JavaScript для Unity, но не идентична) сделал первый шаг к полному устареванию, удалив опцию добавления файла "JavaScript" из пользовательского интерфейса. Хотя JS-файлы все еще можно использовать, поддержка в них будет полностью прекращена в более поздних версиях.

Это также означает, что Boo станет непригодным для использования, так как его компилятор фактически построен как слой поверх UnityScript. И, таким образом, будет удален aswel.

Это означает, что в будущем только C # будет иметь встроенную поддержку.

unity выпустила полная статья об устаревании UnityScript и Boo еще в августе 2017 года.

95
Cody Hatch

Когда вы собираете для iPhone в Unity, он выполняет сборку Ahead of Time (AOT) вашей моно сборки (написанной на C # или JavaScript) в собственный ARM код.

Инструмент разработки также создает проект-заглушку xcode и ссылается на скомпилированный lib. Вы можете добавить код Objective C в этот проект xcode, если есть нативные вещи, которые вы хотите сделать, которые еще не представлены в среде Unity (например, доступ к компасу и/или гироскопу).

6
Calvin

Unity3d поддерживает C #, Boo и JavaScript. Фреймворк переводит это в промежуточный формат, а затем на нужную платформу (IOS/Android/Linux/Windows)

Помните, что сначала компилируются сценарии C #, а затем JS и Boo. Следовательно, если вы хотите, чтобы сценарий C # взаимодействовал с JS, вам нужно будет сохранить JS в папке стандартных активов.

5
user1438327

Unity поддерживает:
1. UnityScript (известен как Javascript, но включает в себя больше функций для игрового движка Unity. Я думаю, что это может быть очень легко изучить)
2. Бу (нет опыта)
3. C # (я предпочитаю это, так как это полезно для изучения, и вы также сможете использовать это вне единства. Я также думаю, что к этому легко привыкнуть)

3
alexo1001

Некоторые из основных различий между синтаксисом сценариев C # и Javascript в Unity.

http://unity3d.com/learn/tutorials/modules/beginner/scripting/c-sharp-vs-javascript-syntax

но имейте в виду, C # является лучшим для развития в единстве

2
malbarmawi

Он использует c # и unityscript (javascript), который поддерживается исходным кодом на c ++, и поддержку плагинов c ++ (исходный код и плагины требуют pro).

Справочник по сценарию unity3d действительно прост для понимания/использования при необходимости, возможно, самый простой из таких движков, как cryengine, udk и т.д.

Надеюсь это поможет.

1
user3210251

я помню это, читая некоторые статьи о производительности в единстве из Интернета, что побуждает пользователей javascript использовать его в единстве о действительно серьезных проблемах использования javascript в единстве вместо C #, говорится, что C # почти в 4 раза быстрее, чем javascript!
Я действительно ценю эту статью, потому что она спасла мою задницу, когда я собирался начать играть, я не имею в виду, что javascript это плохо для разработчиков Unity, это хорошо, но мой совет может быть, если вам нравится использовать javascript Вы должны использовать его для простых маленьких игр НЕ ДЛЯ БОЛЬШИХ ПРОЕКТОВ, потому что это действительно может быть чертовски проблемой!

1
a_m_dev

Вы можете использовать C #, Javascript, Boo.

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

1
user3112151

Можно использовать любой из следующих трех языков сценариев:

  1. JavaScript
  2. C #
  3. Бу

Но мой личный выбор - C #, потому что я нахожу его быстрее по сравнению с двумя другими.

1
Mayank Gupta