Единство Android против Android SDK

10

Я знаком с Unity и в процессе изучения android SDK, когда вышел анонс о единстве android basic.

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

lathomas64
источник

Ответы:

13

Обновление Unity 5.x Существует подробное руководство о том, как писать плагины для собственного кода и вызывать их из Unity http://docs.unity3d.com/Manual/PluginsForAndroid.html.

Так как Unity 4.x уже выпущен, и Android претерпел множество изменений, вы должны рассматривать этот ответ как справочный, а не современный, так как он может быть устаревшим!

Извините, но Рикет ошибается: Unity предоставляет полный доступ через Android SDK через API, что также необходимо для работы с Android-играми в Unity:

Прежде чем вы сможете запускать игры Unity для Android на реальном устройстве, вам необходимо настроить среду разработки для Android. Это включает в себя загрузку и установку Android SDK с различными платформами Android и добавление вашего физического устройства в вашу систему (это делается немного по-разному, в зависимости от того, разрабатываете ли вы Windows или Mac). Этот процесс настройки описан на веб-сайте разработчика Android, и может быть дополнительная информация, предоставленная производителем вашего устройства. Поскольку это сложный процесс, мы предоставили базовый план задач, которые необходимо выполнить, прежде чем вы сможете запускать код на своем устройстве Android или в эмуляторе Android. Однако лучше всего шаг за шагом следовать инструкциям на портале разработчиков Android.

Unity Android предоставляет скриптовые API для доступа к различным входным данным и настройкам. Вы можете узнать больше о новых классах сценариев на странице сценариев Android. Предоставление собственного кода C, C ++ или Java для сценариев

Unity Android позволяет вам вызывать пользовательские функции, написанные на C / C ++ напрямую (и Java косвенно) из сценариев C #. Чтобы узнать, как связать собственные функции, посетите страницу плагинов.

руководство по единству источников

Единство:

  • если у вас уже есть активы и более сложные модели
  • воспользоваться многими форматами файлов
  • быстрый прогресс, если у вас уже есть дизайн и вы знаете, как должна выглядеть игра

Android SDK:

  • может рассмотреть это для программирования начинающих 2D игр
  • хороший старт для изучения основ андроида, опыт которых может быть использован для дальнейшего развития с Unity

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

daemonfire300
источник
1
поэтому, если я не знаю Android SDK хорошо, вы бы предложили использовать его для текущего проекта и, возможно, Unity для более поздних, когда я это понял?
lathomas64
1
Да, так как вы хотите сделать небольшую легкую игру, вы должны использовать простые инструменты. Иногда целый игровой движок - это слишком много для маленькой игры, с этим я часто сталкивался, особенно когда пытался кодировать 2D-игры в 3D-движках. Конечно, это возможно и просто, если у вас есть все готовые активы, но нужно больше думать, потому что вам все еще нужно работать в пространстве Vector3.
daemonfire300
5

Ну, они совершенно разные! Android SDK позволяет писать приложения для Android с нуля на Java. Unity - это пакет для создания игр, в котором вы можете перетаскивать, добавлять сценарии и т. Д., А затем нажимать кнопку, чтобы экспортировать законченное приложение Android.

Android SDK:

  • Написать приложение с нуля
  • Полный контроль над тем, что ваша игра делает и как выглядит; ты можешь делать что угодно
  • Гораздо больше работы и знаний
  • Пишите все на Java

Единство:

  • Создайте игровой проект, импортируйте ресурсы, расположите сцены и т. Д. В интерфейсе Unity
  • Действия скрипта для объектов в JavaScript, C # или Boo
  • Протестируйте игру на ПК и разверните на нескольких платформах, включая Android
  • Java не требуется (Android SDK не требуется)
  • Нет контроля над финальным приложением; он работает с движком Unity, и вы не можете, например, добавить дополнительный Android Activity(например, «экран») в свое приложение или редактировать его любым способом, кроме как в интерфейсе Unity.
  • Большой размер .apk, потому что весь движок Unity (около 10 МБ) упакован в ваше приложение, независимо от того, сколько его вы фактически используете.

Обратите внимание, что у меня нет опыта работы с функцией Unity для Android (хотя у меня есть общий опыт работы с Unity), поэтому, пожалуйста, исправьте меня (или просто отредактируйте этот пост), если категория Unity каким-либо образом неверна.

Ricket
источник
1

Если вы не знаете Java и абсолютно не имеете C ++ или C #, я бы никогда не порекомендовал использовать Android-API для чего-либо, кроме мазохизма или внешнего интерфейса для веб-службы. Это из-за 5 лет работы над Android для некоторых крупных игроков. Я избавлю вас от книги, которую я мог бы написать на эту тему, но Android-приложение еще недостаточно развито для разработки или реализации. И я думаю, что до того, как это произойдет, ребятам из Google нужно будет серьезно заняться поиском их методологий разработки. Просто пища для размышлений, почему все инструменты третьей части и API выдувают собственные инструменты из воды?

Мартин
источник