Показаны сообщения с ярлыком 2D. Показать все сообщения
Показаны сообщения с ярлыком 2D. Показать все сообщения

суббота, 24 марта 2012 г.

Фиксим утечки памяти в box2d(2.1a)

Данная тема уже подымалась ранее и там я описал простейший способ обойти этот баг - это пересоздать мир. Теперь хочу описать способ который полностью фиксит этот баг. Заключается он в изменении кода в box2d. Изменений мало, даже очень мало.

Добавим в класс b2Body, функцию Destroy с таким содержанием: [...]
Читать дальше: Фиксим утечки памяти в box2d(2.1a)

воскресенье, 15 января 2012 г.

Nape и Starling вместе? Это возможно!

Привет, друзья!

Некоторые из вас уже наверняка пробовали использовать быстрейший flash 2D физический движок Nape вместе с GPU 2D фреймворком Starling и заметили, что свойство Body.graphic является flash.display.DisplayObject и не может быть приравнено к экзмепляру starling.display.DisplayObject.

В итоге, некоторые просто использовали более медлительный Box2D, некоторые самостоятельно контролировали отрисовку физических тел в виде DisplayObject’ов движка Starling, вожможно, некоторые даже сделали то же самое, что сделал я, но никому не показали. Мне нравится свойство Body.graphic — оно очень удобное и мне хотелось бы помочь всем as3 разработчикам использовать его в полную силу и для DisplayObject’ов Starling’а.

Представляю вашему вниманию модифицированные swc движка Nape (release и debug) Milestone 7.2 «r3″ для FP 10+, (возможно, не полностью) совместимые со Starling.

Всё, что я там изменил — заменил класс Body.graphic flash.display.DisplayObject на Dynamic (* в as3) и удалил конвертацию в градусы свойства Body.graphic.rotation. В моём случае, этого было достаточно.
Теперь я могу использовать Nape как обычно, с обычными DisplayObject’ами, что очень здорово!
Да, там наверняка есть ещё какие-нибудь несовместимые вещи со Starling, но в моём случае Nape работает без ошибок и проблем не возникает.

Качайте и используйте эти swc со Starling в своё удовольствие!
debug swc
release swc

Мне понравилось приключения с компиляцией caxe и flib под Windows в MinGW, это было здорово!
Чтобы скомпилировать swc под Windows, надо: [...]

Читать дальше: Nape и Starling вместе? Это возможно!

воскресенье, 11 сентября 2011 г.

Создание очередной казуалки на Flash-платформе с физикой. Часть II

Привет хабра-сообществу.

Относительно недавно достаточно давно писал статью про создание очередной казуалки на Flash-платформе с физикой, обещал вторую статью, встречайте.
В этой статье — научу рисовать мир и расскажу о сенсорах. Остальное под катом.

Что можно сделать из этих двух уроков, можно посмотреть тут (музыку отключить нельзя, но можно убрать звук в системе)[...]

Создание очередной казуалки на Flash-платформе с физикой. Часть II

воскресенье, 12 июня 2011 г.

Создание очередной казуалки на Flash-платформе с физикой

Привет, дорогой друг.

Начну с того, что геймдевом я занимаюсь относительно недавно.
Поэтому на качество кода и информации не полагайтесь %)

Скриншот flash игры на Box2dВ этой статье я расскажу о том, как использовать физический движок Box2D для своих игр, на примере прототипа.

Если повезет и вам понравится статья, то будет и вторая часть, и третья часть. В конечном итоге мы получим такую игру. (да-да, игра жутко не доделана, тоже самое, что и в статье, только с графикой и сенсорами)
Остальное под катом.

Читать дальше: Создание очередной казуалки на Flash-платформе с физикой

понедельник, 21 февраля 2011 г.

Видеоурок №3

Видеоурок №3:

Урок №3 по Box2d

Урок про создание тел в Box2d, в том числе — невыпуклых полигонов, а также, про отображение тел Box2d мира при помощи спрайтов.

Видео отныне на Vimeo. Архив проекта. Приятного просмотра! )

четверг, 23 декабря 2010 г.

Box2d особенность

Box2d особенность:

В Terrorism'е очень простой алгоритм разрушения блоков, наверняка в аналогичных играх типа Sieger'а куда больше математики. Если коротко, то пилим блок на треугольники (достаточно мелко), а потом пробегаемся по ним, и группки в 2-4 треугольника объединяем более сложные в полигоны. При объединении нужно проверять выпуклость получившегося полигона, т.к.с невыпуклыми бокс не умеет работать (бажат коллизии). Полигон выпуклый, если векторное произведение всех соседних сторон имеет один знак. А вот как быть с нулем, имеет ли 0 тот же знак, что и положительные числа, например? Векторное произведение равно нулю, если вектора коллинеарны, т.е. угол между сторонами должен быть развернутым. Отвечаю, бокс считает такие полигоны невыпуклыми и соответственно по черному бажит [...]