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

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

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

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

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

10 ответов


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

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

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

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


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

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

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

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


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

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


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

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


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


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

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

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


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

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


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

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

надеюсь, что это помогает.


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

  1. JavaScript
  2. C#
  3. Бу

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


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