среда, 9 мая 2012 г.

С ДНЁМ ПОБЕДЫ !!!

















...если бы не эта победа, не было бы Наших писюлек в блогах, этих тёплых, тихих весенних деньков...подумайте, пожалуйста, об этом мои дорогие соотечественники...

вторник, 17 апреля 2012 г.

Заметки AndEngine GLES1

Прежде чем переходить на AndEngine GLES2 версию, решил поработать с AndEngine GLES1 версией, здесь буду писать небольшие заметки.

17.04.2012
При запуске AndEngine Examples, любой пример использующий текст на эмуляторе выдавал "unfortunately...". Беседа с гугл поисковиком дала ссылку на официальный форум, где ,вроде бы, дан ответ по решению вопроса, связанный с упущением создателя движка. Необходимо заменить в классе andengine.ui.activity.BaseGameActivity заменить следующий метод:
public FontManager getFontManager() 
{
  // вместо return this.getFontManager();
  return this.mEngine.getFontManager();
}

Попробовал, но приложение по прежнему не захотелось запускаться.
Снова гугл, снова поиск и решение найдено! Необходимо отключить VertexBufferObjects в настройках движка: engineOptions.getRenderOptions().disableExtensionVertexBufferObjects();

пятница, 13 апреля 2012 г.

Часть 4. Запуск AndEngine GLES2 examples

Перед тем как мне  всё таки удалось запустить эмулятор android с GPU пришлось хорошенько пропариться, вместе с google-поисковиком и большим желанием тестировать игры на новом движке AndEngine GLES2.
( Часть1. Часть2. Часть3. )

Запуск AndEngine GLES2 examples на эмуляторе android используя Intellij IDEA 11.1:
  1. Установите самую последнюю версию эмулятора API-Level 15.
  2. Обновите драйвера видеокарты.
  3. Установите Git. Запустите git-bash.bat (или git-cmd.bat) и клонируйте  по списку http://www.andengine.org/forums/announces/andengine-gles2-pre-release-on-december-23rd-t6097.html
  4. Создайте новый Android проект в IDEA и перенесите src папки из скачанных git’ом в проект, а где нужно и lib и res и др.
  5. В настройках IDEA переставляем компилятор на Эклипсовский:                   File->Settings->Java Compiler->Use compiler[ Eclipse] 
  6. Запускаем созданный эмулятор Android 4.0.3 (с настройкой GPU=YES)  
  7. В настройках android включаем “Force GPU rendering” и “Show CPU usage”(по желанию): 
  8.  Компилируем проект с запуском на эмуляторе. Тестируем и изучаем библиотеки AndEngine GLES2 без использования девайсов. 
  9. Всем спасибо за внимание. У кого запустилось, отпишитесь характеристиками компьютеров.

Ссылка на ИСХОДНИК


Часть 3. Заключение. (2012-04-12 поздней ночью…)


Откладывать деньги на Android устройство пока не особо получается, да и отлаживать под разные разрешения нужно, еще есть много других плюсов разработки на эмуляторе. На данный момент веду разработку игрового проекта на движке AndEngine. Изучая материалы GLES1 версии (что сейчас довольно трудно, т.к. многое из исходников глючит), почитав официальный форум http://www.andengine.org/forums/announces/andengine-gles2-pre-release-on-december-23rd-t6097.html и пообщавшись с опытными людьми (DrDerico) принял решение переходить на GLES 2 версию. Но не тут то было, ведь на тот момент google android  эмулятор не поддерживал GLES2, хотя были и драйвера для Windows конвертирующие GLES2 в OpenGL.
Каждый день запуская SDK Manager хотелось увидеть долгожданную версию эмулятора. И вот наконец он вышел (см. Часть1). Запустить его в первые дни не удалось, были попытки запустить  другой эмулятор (см. Часть2), которые увенчались успехом, но не для AndEngine GLES2.
После тяжёлых двух дней заваривания с эмуляторами, уже ночью решил проверить обновление google эмулятора и о чудо оно появилось:
 
Перед тем как запустить его:
  1. Обновите драйвера видео-карты, на ноутбуке без обновления, эмулятор запускался только с черным дисплеем без признаков жизни.
  2. В процессе тестирования, эмулятор мог запуститься с чёрным дисплеем, заблокироваться и не реагировать на нажатия, запуститься в режиме offline, выдавать ошибки.  Лечение – перезапуск эмулятора J, или компьютера.
Он запустился(!) и запустился простейший пример AndEngine GLES2(!), по уроку http://www.andengine.org/forums/tutorials/updated-getting-started-with-andengine-t4858.html 
Вот только на рабочем компьютере к сожалению он отказался работать, либо выкидывая ошибку, либо показывая красивый black screen.

Часть 2. Android x86! (2012-04-12)


Не отчаявшись, вбивая в google новые строчки поиска, выбилась ссылка на сайт http://www.android-x86.org/ . Оказывается, группе разработчиков надоело, что гугл мало заботится о скорости стандартных эмуляторов и выпустили свой эмулятор.
           
При установке эмулятора на VirtualBox, стоял выбор межу несколькими образами эмуляторов на тот момент:
  • android-x86-4.0-RC1-amd_brazos.iso
  • android-x86-4.0-RC1-asus_laptop.iso
  • android-x86-4.0-RC1-eeepc.iso
  • android-x86-4.0-RC1-s103t.iso
  • android-x86-4.0-RC1-tegav2.iso

Различаются они, наверное, в типе эмулируемой машины. На PC1(см. таблицу 1) заработал только android-x86-4.0-RC1-eeepc.iso, остальные либо не запускались вообще, либо не хотели форматироваться в ext3.

После тяжких попыток получения Ethernet соединения между компьютером и эмулятором гугл направил на статью http://habrahabr.ru/post/119931/ .  Прочитав очень внимательно хабр статью еще раз, берём на вооружение следующий танец с бубном, в эмуляторе нажимаем ALT+F1 и вводим:
# netcfg
  # netcfg eth1 down
  # netcfg eth1 dhcp
  # netcfg eth1 up
  # netcfg //на этом шаге запоминаем eth ip номер; вместо eth1 может быть eth0, как у меня, в зависимости от того, что выдаёт netcfg.

Выходим  ALT+F7 в визуальный режим. Командуем «adb connect (ваш eth ip номер)»  в консоли windows и опля, есть контакт, вывелась надпись connect to (Ваш IP)).
Теперь компилируем простейший AndEngine GLES2 проект  в IDEA, получаем на выходе apk файл. Инсталлируем в наш эмулятор через adb, запускаем… разочаровываемся:

Оказывается на данный момент android 4.0 x-86 не поддерживаем GLES2 эмуляцию. Я опечалился еще больше и решил ждать исправления ошибок эмулятора от google или выхода обновлений android x86.