КРИ 2013

События



15-17 мая 2013 года в гостинице «Космос» пройдет ежегодная Конференция Разработчиков Игр (КРИ).

Цена билетов до 19 апреля — 5000 руб, после 19 апреля — 8000 руб.

Первая Конференция Разработчиков Игр (КРИ) в России состоялась в марте 2003 года в Московском Государственном Университете. Организатором мероприятия выступил The Daily Telefrag™ — ведущее русскоязычное Интернет-издание для игровых разработчиков и издателей России, стран СНГ и Балтии. Впервые в истории российской игровой индустрии КРИ 2003 собрала профессионалов отрасли для обмена опытом и обсуждения самых различных проблем.

Читать дальше

Запекание текстур в плагине 3dmax Flatrion

Создание контента
Я нуб в этом деле, но приходится запекать текстуры и импортировать модели из 3dmax. Пишу эту заметку чисто для себя, чтобы запомнить некоторые особенности работы с Flatrion и не наломать дров снова.

Читать дальше

Макросы в AS3

Программирование
А я и не знал что бывают такие штуки:
http://stackoverflow.com/questions/2527561/is-it-possible-to-do-a-define-in-adobe-flex
И даже отдельные препроцессоры для AS3 есть. Очень интересно, можно все настроить и использовать макросы.

Для FlashBuilder: http://blog.joa-ebert.com/2006/02/27/actionscript3-preprocessor/
Для FlashDevelop: http://www.flashdevelop.org/community/viewtopic.php?f=5&t=1188

Также макросы есть в apparat: http://code.google.com/p/apparat/wiki/MacroExpansion
Для встраивания inline функций надо использовать тулзу tdsi, которая есть здесь: http://makc.googlecode.com/svn/trunk/flash/fd_inline/tdsitest/

А ещё можно делать макросы в AS3 через gpp (http://en.nothingisreal.com/wiki/GPP).
Вот он: http://makc.googlecode.com/svn/trunk/gpp.2.24-windows/
Вот тестовый проект под FD с ним: http://makc.googlecode.com/svn/trunk/flash/fd_inline/gpptest/

IEEE754 - вдруг кто-то ещё не знает...

Программирование
Я не знал, каюсь. Не знал что все вещественные числа считаются совершенно не правильно. Недавно столкнулся с этим в AS3 при вычислении текстурных координат. Долго копал, а потом узнал это: стандарт IEEE754 какашка.

В AS3 например такая операция 0.4 + 0.2 даёт результат 0.6000000000000001. Из-за этого текстурные координаты берутся от другого пикселя и картинка становится неверной. В моём случае достаточно было просто обрезать вычисленный результат. Наиболее быстрый способ это сделать такой: int(100000000*x) / 100000000. И делать надо это после каждой арифметической операции с вещественным числом x.

А вообще проблема очень серьёзная и решений на сегодняшний день нет. Подробности в статье.

Работа с памятью на флеше

Программирование
Коротко резюмирую тут трюки по борьбе со сборщиком мусора виртуальной машина Flash Player. Иследования проводились только для версии 11.1 standalone debugger for win32. В следующих версиях Flash Player могли как улучшить работу с памятью так и ухудшить, но скорее всего всё осталось также. Итак, garbage collector (GC) исключительно хреново работает с памятью. Он её попросту не очищает во многих случаях или выделяет в разы больше чем требуется.

Читать дальше

Создание спецэффектов для игр

Создание контента
Хочу поделиться совсем небольшим, но всё таки опытом создания графических спец-эффектов для игр. Я имею в виду всякие вспышки, магию и всё что угодно, что делается системами частиц. Но в первую очередь это конечно взрывы :)

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

Читать дальше

Экспорт low-poly персонажей из Poser и DAZ Studio

Создание контента
У меня появилась идея: экспортировать персонажей из Poser/DAZ и вставлять в свой игровой движок. Если такая возможность существует, то перспектива очень заманчивая, потому что моделей для Poser/DAZ существует дофигища. Это бы решило проблему поиска или создания нужных персонажей для игр. Но экспортировать надо в low-poly. Сразу же погуглил на эту тему и нашёл вот это обсуждение на англоязычном форуме. Там много интересного. Короче, выходы есть и так действительно можно.
В середине этой темы есть ссылка на утилиту под названием Decimator for DAZ Studio. Она может создавать низкополигональные модели из стандартных дазовских. А именно умеет:
«Decimator for DAZ Studio allows users to create any number of lower polygon versions of a high resolution model known as Levels of Detail (LODs). Use LOD features in DAZ Studio to automatically switch between models depending on factors such as distance from the camera.
Features:
— Create Levels of Detail (LODs)
— Remove invisible Nodes following decimation.
— Remove invisible Surfaces following decimation.
— Prepare to Decimate – (Convert polygons to triangles).
— Decimate complete model including all objects in scene.
— Decimate only selected objects.
— Decimate by percentage.
— Decimate to fixed number of faces.»

Кроме того: «In Poser you have high poly meshes and low poly meshes. No need to use some plugin. the low poly meshes are like 2000 polys… perfect.» Это очень радует.

Экспорт единой текстуры сцены в 3dMax

Создание контента
Эта заметка написана ламером для ламеров. Так что если, кто-то знает как эти вещи делать правильно, расскажите! Если же вы не эксперт в 3dmax, но вам нужно экспортировать какую-то модель с единой текстурой, как мне, эта заметка для вас. Экспорт всех материалов сцены, а также освещения в одну простую текстуру нужен в частности для некоторых игровых движков. Короче, если вы не знаете зачем это надо, идите лесом..)

Читать дальше

The White Nights: Mobile Games Conference. 14-15 июня 2012 г.

События

В Санкт-Петербурге пройдет White Nigths: Mobile Games Conference — международная конференция по разработке и продвижению мобильных игр. Это крупнейшая в России международная конференция посвященная исключительно игровой тематике на мобильных платформах.

В мероприятии примут участие представители таких компаний как: Google, Microsoft, Rovio, Nevosoft, Big Fish Games и других.

White Nigths: Mobile Games Conference пройдет в стенах Sokos Hotel Palace Bridge — 5-тизвездочного отеоя в историческом центре Петербурга. Отель расположен на Васильевском острове, неподалеку от берега Невы.

Спешите регистрироваться, мест почти не осталось!

Искусственная жизнь

Программирование
В этом посте речь пойдёт о принципах построения искусственной жизни на основе ИИ, описанного ранее. Я обнаружил одну важную особенность: каждое действие неразрывно связано с состоянием, в котором его можно применять. Под состоянием (S) понимается все необходимые условия, в которых действие может быть исполнено. Т.е. в неоптимизированном идеальном варианте это совокупность всех параметров мира, в модели которого живёт ИИ. В оптимизированном варианте это только явно необходимые параметры без учета «погоды на Марсе».

Читать дальше