libgdx — Gamedev sufferingБлог о разработке игр и серверных технологияхSun, 25 May 2025 20:13:38 +0000ru-RUhourly1https://wordpress.org/?v=5.1.19/wp-content/uploads/2019/03/cropped-Lain-32x32.pnglibgdx — Gamedev suffering3232 Как я писал Bomberman’а на Android/2013/05/16/3211/kak-ya-pisal-bombermana-na-android//2013/05/16/3211/kak-ya-pisal-bombermana-na-android/#commentsThu, 16 May 2013 11:43:04 +0000/?p=3211С момента публикации игры постоянно люди просили выложить исходники. Решил всё-таки поделиться ими. Может кому-нибудь и поможет в изучении LibGDX.

Небольшое отступление

Не имел опыта работы с Java, а уж тем более с Android. Решил и то, и другое изучать на практической задаче. Писать на чистом OpenGL свой движок не очень хотелось.

Продолжить чтение

]]>
/2013/05/16/3211/kak-ya-pisal-bombermana-na-android/feed/11
Уроки по libgdx на github/2013/05/14/3206/uroki-po-libgdx-na-github//2013/05/14/3206/uroki-po-libgdx-na-github/#respondTue, 14 May 2013 08:36:04 +0000/?p=3206Решил всё-таки публиковать все уроки на github’е. И мне так работать проще, и людям удобнее, как мне кажется.

Уже написанные туториалы опубликовал. Следим за уроками по libgdx на github. Новые тоже буду там публиковать.

Заикнулся недавно, что выложу исходники Boomberman’а. Действительно, если кому-то это поможет в освоении движка, то почему бы и нет, собственно.

Продолжить чтение

]]>
/2013/05/14/3206/uroki-po-libgdx-na-github/feed/0
libGDX: Часть 8. Создание меню и переход между экранами/2013/01/25/2959/libgdx-chast-8-sozdanie-menyu-i-perexod-mezhdu-ekranami//2013/01/25/2959/libgdx-chast-8-sozdanie-menyu-i-perexod-mezhdu-ekranami/#commentsFri, 25 Jan 2013 19:51:41 +0000/?p=2959В любой игре присутствует меню. Довольно сложно придумать иной способ навигации. В этой статье рассмотрим как создать свой экран с меню средствами libGDX. Попутно немного о проблеме соотношения сторон на различных устройствах.

Проблема с разрешением экрана

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

Продолжить чтение

]]>
/2013/01/25/2959/libgdx-chast-8-sozdanie-menyu-i-perexod-mezhdu-ekranami/feed/34
libGDX: Часть 7.1. Использование AdMob/2013/01/01/2870/libgdx-chast-7-1-ispolzovanie-admob//2013/01/01/2870/libgdx-chast-7-1-ispolzovanie-admob/#commentsTue, 01 Jan 2013 13:37:09 +0000/?p=2870Ради интереса решил посмотреть сколько в принципе можно заработать на рекламе в не очень раскрученном приложении. Как раз дописывал Lode Runner’а, в него и запихнул. Решил показать, как добавить в свои игры на LibGDX рекламу.

Google AdMob Ads SDK для Android

В целом трудностей никаких нет. Порадовало, что в руководстве всё чётко расписано как делать, при чём на русском.

Продолжить чтение

]]>
/2013/01/01/2870/libgdx-chast-7-1-ispolzovanie-admob/feed/21
libGDX: Часть 6.2. Использование фильтров в Box2D/2012/12/25/2812/libgdx-chast-6-2-ispolzovanie-filtrov-v-box2d//2012/12/25/2812/libgdx-chast-6-2-ispolzovanie-filtrov-v-box2d/#commentsTue, 25 Dec 2012 11:03:39 +0000/?p=2812В прошлой статье рассматривалась работа с ContactListener. Вот только примеры, которые я использовал, были не совсем верно выбраны. В Box2D есть намного более удобные средства для фильтрации столкновений, а именно — фильтры. О них и напишу в этот раз.

В прошлой статье о ContactListener рассматривалось, как переопределить метод preSolve, чтобы сделать контакты неактивными.

Продолжить чтение

]]>
/2012/12/25/2812/libgdx-chast-6-2-ispolzovanie-filtrov-v-box2d/feed/8
libGDX: Часть 6. Работа с Box2D/2012/12/22/2764/libgdx-chast-6-rabota-s-box2d//2012/12/22/2764/libgdx-chast-6-rabota-s-box2d/#commentsSat, 22 Dec 2012 08:54:46 +0000/?p=2764Прошлые статьи в целом были вводными. Но только при помощи них уже можно написать свою игру. Правда в этом случае придётся всю физику самому продумывать. Для написания многих типов игр идеально бы подошёл встроенный в LibGDX движок — Box2D. О нём и пойдёт речь в этой статье.

Box2D является физическим движком реального времени и предназначен для работы с двухмерными физическими объектами.

Продолжить чтение

]]>
/2012/12/22/2764/libgdx-chast-6-rabota-s-box2d/feed/33
libGDX: stereo или mono/2012/12/13/2718/libgdx-stereo-ili-mono//2012/12/13/2718/libgdx-stereo-ili-mono/#commentsThu, 13 Dec 2012 09:45:14 +0000/?p=2718Уже не первый проект, где выскакивает ошибка при быстром включении/выключении звука. Почему-то libgdx плохо справляется со стерео.

У меня при запуске уровня, включается фоновая музыка. При нажатии на Back игра ставится на паузу и в появившемся окне можно кликнуть по одной из 2-х кнопок: вернуться на главный экран или продолжить игру.

Продолжить чтение

]]>
/2012/12/13/2718/libgdx-stereo-ili-mono/feed/7
libGDX: Часть 6.1. Работа с ContactListener из Box2D/2012/12/10/2672/libgdx-chast-6-1-rabota-s-contactlistener-iz-box2d//2012/12/10/2672/libgdx-chast-6-1-rabota-s-contactlistener-iz-box2d/#commentsMon, 10 Dec 2012 19:38:19 +0000/?p=2672В Box2D есть специальный интерфейсный класс ContactListener, реализовав который, можно обрабатывать коллизии. В этой статье покажу как его использовать на практических примерах.

ContactListener — интерфейс, который можно реализовать в своём классе для дальнейшего использования в игровом мире. Необходимо реализовать 4 метода: beginContact, endContact, preSolve, postSolve. Наш класс будет иметь примерно такой вид:

public class MyContactListener implements ContactListener{

@Override
public void endContact(Contact contact) {
}

@Override
public void beginContact(Contact contact) {

}

@Override
public void preSolve (Contact contact, Manifold oldManifold){

}

@Override
public void postSolve (Contact contact, ContactImpulse impulse){

}

}

Чтобы использовать, необходимо назначить его игровому миру.

Продолжить чтение

]]>
/2012/12/10/2672/libgdx-chast-6-1-rabota-s-contactlistener-iz-box2d/feed/7
libGDX: поворот текстуры при рендеринге/2012/12/09/2663/libgdx-povorot-tekstury-pri-renderinge//2012/12/09/2663/libgdx-povorot-tekstury-pri-renderinge/#respondSun, 09 Dec 2012 16:50:22 +0000/?p=2663Не разобрался как следует с отрисовкой объектов и стал жаловаться. А оказалось, что объект то повернуть не так сложно. Ну, текстуру объекта.

В статье про спрайты рассказал, как можно повернуть спрайт. Для текстуры же надо юзать draw(Texture texture, float x, float y, float originX, float originY, float width, float height, float scaleX, float scaleY, float rotation, int srcX, int srcY, int srcWidth, int srcHeight, boolean flipX, boolean flipY).

Продолжить чтение

]]>
/2012/12/09/2663/libgdx-povorot-tekstury-pri-renderinge/feed/0
libGDX: Box2D и проблемы с трением/2012/12/09/2650/libgdx-box2d-i-problemy-s-trenie//2012/12/09/2650/libgdx-box2d-i-problemy-s-trenie/#commentsSun, 09 Dec 2012 11:18:42 +0000/?p=2650Не так давно начал обкатывать физические движок Box2D, который в libGDX входит. Довольно не мало проблем с ним возникло. Последние дни мучился с различными силами.

Сразу стоит сказать, что движок охрененный. Точно довольно физику тел моделирует. Но огромная проблема возникает в подборе коэффициентов различных. В последние дни пытался разобраться с силой трения и с гравитацией.

Продолжить чтение

]]>
/2012/12/09/2650/libgdx-box2d-i-problemy-s-trenie/feed/9