Настройка проекта, запуск и отладка

libGDX сильно ориентирован на разработку в Eclipse и как back-end Android и HTML/GWT. В этой статье рассказывается, как настроить libGDX проект в Eclipse. Если вы используете IntelliJ, тогда вам следует посмотреть это руководство как пользоваться libdgx и IntelliJ IDEA. Если вы предпочитаете использовать другие среды разработки, то, пожалуйста, перейдите в конец страницы, чтобы посмотреть детали.

Требования

Для платформ Windows, Linux, Mac OS X, Android и HTML5 вам необходимо:
В добавление к iOS back-end вам необходимо:
  • Мас, так как iOS развертывание не работает на Windows и Linux.
  • Последняя версия XCode, которую можно бесплатно загрузить в OS X App Store.
  • RoboVM, просто установите Eclipse плагин. Не забудьте почаще обновлять его.

Видео урок

Вы может посмотреть видео (на английском), если не хотите читать статью полностью.

Использование libGDX Установщика

Начиная с версия 0.9.3 libGDX поставляется с легким в использовании приложением называем - "Установщик libGDX" от Aurelien Ribon. Следующие шаги описывают все что вам необходимо чтобы разрабатывать для Desckop, Android, iOS и HTML5.

  1. Скачайте dgx-setup-ui.jar. В него входит stable и nightly релиз.
  2. Запустите jar двойным кликом или из командной строки выполнив java -jar gdx-setup-ui.jar
    1. Укажите вашу конфигурацию для проекта (Configuration Panel).
    2. Укажите stable/nightly zip архив ligdgx релиза или нажмите одну из кнопок чтобы скачать последний stable/nightly релиз (Library Selection Panel). Если хотите разворачивать на iOS, то используйте nightlies.
    3. Нажмите на "Generate projects" кнопку (Generation Panel).
  3. Запустите Eclipse и импортируйте сгенерированные проекты в workspace.
    1. File -> Import -> Existing Projects into Workspace.
    2. Нажмите "Browse", укажите директорию со сгенерированными проектами.
    3. Убедитесь в том, что все проекты выбраны и нажмите "Finish".
    4. Чтобы исправить ошибки HTML5/GWT проекта, перейдите к "Problems" просмотру, нажмите правую кнопку мыши на сообщение о ошибки "The GWT SDK JAR gwt-servlet.jar is missing in the WEB-INF/lib directory" и выберите "Quick Fix". Нажмите "Finish".

Структура Проекта

Предположим, вы создали проект с именем "my-gdx-game" в Setup UI и получили 4 проекта.

  • Core проект (my-gdx-game) - содержит весь код нашего приложения, не учитывая так называемые Starter классы. Все другие проекты ссылаются на данный проект. Такой проект обычно называют базовым проектом (core project).
  • Android проект (my-gdx-game-android) - содержит Starter класс и другие необходимые файлы для запуска приложения на Android платформе. В assets директории находятся assets вашего приложения для всех платформ.
  • Desktop проект (my-gdx-game-desktop) - содержит Starter класс для запуска приложения на desktop. Ссылается на asset директорию Android проекта и на основной проект.
  • HTML5 проект (my-gdx-game-html) - содержит Starter класс и другие необходимые файлы для запуска приложения на обычного HTML5 приложения. Ссылается на asset директорию Android проекта (см. gwt.xml файл) и на основной проект.
  • iOS проект (my-gdx-game-ios) - содержит Starter класс и другие необходимые файлы для запуска приложения на обычного iOS приложения. Ссылается на asset/data директорию Android проекта. Проект содержит Ant скрипт, который выполняется перед каждой сборкой, которая компилирует код основного проекта в .Net (.dll файл), который используется при сборки нативного iOS приложения. Пожалуйста, прочитайте эту статью для большей информации о iOS beck-end.

Все ваши asset ресурсы приложения должны храниться в assets директории Android проекта. Desktop, iOS и HTML5 проекты ссылают на эту директорию, так что не нужно дублировать assets ресурсы.

Замечание для iOS

Xamarin Studio не добавляет автоматически файлы, которые вы положили в asset директорию Android проекта. Вы должны добавить их самостоятельно нажав правую кнопку мыши на проекте и связать файлы. Вам далее необходимо установить "Build Action" для каждого нового добавленного файла, иначе файлы не будут включены в финальную сборку. Также, прочитайте эту статью. Вам нужно будет манипулировать скриптами входящими в iOS SDK.

Запуск Проекта

  • Desktop: нажмите правой кнопкой мыши на desktop проекте, Run As -> Java Application. Выберите desktop starter класс (Main.java)
  • Android: Убедитесь что устройство подключено и отображается в DDMS. Если вы не знаете, что это значит, пожалуйста перейдите к руководству по Android . Нажмите правой кнопкой мыши на Android проекте, Run As -> Android Application.
  • iOS: В Xamarin Studio, выберите release или debug profile (симулятор или устройство), затем нажмите на build and run кнопку.
  • HTML5: существует два режима в которых можно запустить приложение:
  1. development/hosted режим: выполняет Java код через GWT плагин and позволяет делать отладку и замену кода.
    1. Нажмите правой кнопкой мыши на HTML5 проекте, Run As -> Web Application.
    2. В "Web Development" просмотре, нажмите на URL. Откроется ваш браузер. Если у вас не установлен GWT плагин, вам будет показано соответствующее сообщение. После установке плагина, просто обновите страницу.
  2. production/web режим: вам нужен будет веб-сервер для выполнения скомпилированных файлов (т.е. Ngnix или браузер способный выполнять JavaScript из локальных файлов.
    1. Нажмите правой кнопкой мыши на HTML5 проекте, Google -> GWT Compile.
    2. Скомпилировав, положите содержимое war/ директории в директорию доступную вашему веб серверу. WEB-INF директория не требуется.
    3. Укажите браузеру URL, который отобразить .html файл.

Отладка Проекта

  • Desktop: Нажмите правой кнопкой мыши на desktop проекте, затем Debug As -> Java Application. Выберите desktop starter класс (т.е. Main.java). Установите нужные breakpoints, заменяйте ваш код (hot swapping), редактируйте и сохраняйте во время отладки для тестирования изменений без перезагрузки приложения.
  • Android: будем считать, что у вас есть подсоединенное устройство, Debug As -> Android Application. Hot swapping не поддерживается, но вы можете использовать DDMS перспективу, чтобы проверить использование памяти и так далее. Перейдите к руководству Android для более детальной информации.
  • iOS: В Xamarin Studio выберите debug profile (симулятор или устройство), затем нажмите build and debug кнопку.
  • HTML5:
  1. development/hosted режим: выполняет Java код через GWT плагин и позволяет делать отладку и горячею замену кода (hot swapping code).
    1. Нажмите правой кнопкой мыши на HTML5 проекте, Debug As -> Web Application.
    2. В "Web Development" просмотре, нажмите на URL. Откроется ваш браузер.
    3. Установите breakpoints в вашем Java коде. Если вы редактируете код и сохраняете изменения, то вам нужно обновить страницу чтобы изменения вступили в силу. По существу это перезапустит ваше приложение. Это гораздо быстрее чем повторная компиляция кода.
  2. production/web режим:
    1. Нажмите правой кнопкой мыши на HTML5 проекте, Google -> GWT Compile.
    2. Измените флаг в "Advanced" на "-strict -draftCompile" и "Output Style" на "detailed". Это создаст читабельный Javascript, который можно сопоставить 1:1 к вашему Java коду.
    3. Скомпилировав, положите содержимое war/ директории в директорию доступную вашему веб-серверу. WEB-INF директория не требуется.
    4. Укажите браузеру URL, который отобразить .html файл.
    5. Откройте Firebug или схожий инструмент отладки, перейдите к JavaScript и установите breakpoints, просматривайте callstack и т.д. Чтобы найти методы Java классов, просто ищите пакет/класс/имя_метода.

Ручная Настройка Проекта

Пожалуйста, перейдите к ручной настройки проекта.