Pull to refresh
284
0
Святослав @soulburner

Разработчик игр

Send message

Под капотом Graveyard Keeper: Как реализованы графические эффекты

Reading time 5 min
Views 55K
Всем привет! Целых 4 года я не писал на Хабр. Последняя моя серия постов была о различных инструментах и приемах, которые мы применяли на нашей прошлой игре (разрабатывая ее на Unity). С тех пор игру ту мы благополучно выпустили, а также выпустили и новую. Так что теперь можно немного выдохнуть и написать несколько новых статей, которые могут быть кому-то полезны.


Сегодня я хочу рассказать о графических приемах и ухищрениях, которые мы применяли для создания той картинки, которую вы видите на гифке выше.

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

Для начала, кратко перечислю из чего собирается картинка в нашей игре:
Читать дальше →
Total votes 179: ↑178 and ↓1 +177
Comments 98

TIS-100 — паззл про многопоточный ассемблер, который никто не ждал

Reading time 3 min
Views 84K
image

Удивительно, но никто не написал ничего про игрушку «TIS-100», которая недавно появилась в Steam (стоит всего 150 рублей, уже 460 положительных отзывов против 6 отрицательных).

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

Итак, о чем игра?
Читать дальше →
Total votes 45: ↑42 and ↓3 +39
Comments 24

Создание игры на ваших глазах — часть 8: Визуальное скриптование кат-сцен в Unity (uScript)

Reading time 6 min
Views 47K
В одной из предыдущих публикаций я рассказывал, что мы прикрутили к нашей игре язык Lua для скриптования различных сценок. Однако, попользовавшись им какое-то время, мы поняли, что порой написание таких скриптов превращается в довольно сложночитаемый и сложноотлаживаемый код.


И мы задумались о визуальном подходе. В этой статье я расскажу о нашем знакомстве с средством визуального скриптинга для Unity — "uScript", о его возможностях и расскажу о нашем опыте.

Да, на скрине выше — реальные скрипт и схема.
Читать дальше →
Total votes 26: ↑24 and ↓2 +22
Comments 16

Создание игры на ваших глазах — часть 7: 2D-анимации в Unity («как во флэше»)

Reading time 6 min
Views 95K
В этой статье поговорим о 2D анимациях в Unity. Я расскажу о своем опыте работы с родными анимациями в юнити, о том, насколько тайм-лайны похожи на флэшевские, об управлении анимациями, event'ах, вложенности, и о том, как художник справляется с анимированием.

Для начала, немного теории.

В Unity есть две сущности:

1. Анимация (то, что отображается в окно «Animation»)
2. Mechanim дерево анимаций (то, что отображается в окне «Animator»).



Ниже я немного расскажу, что это такое и как нам может приходиться (или не пригодиться).
Читать дальше →
Total votes 29: ↑26 and ↓3 +23
Comments 15

Эмуляция NES/Sega/etc в кармане: Обзор/настройка EXEQ Ray 2 (JXD S5110b) — прошивка, софт, управление

Reading time 8 min
Views 48K
imageВ этой статье я расскажу о своем опыте в эксплуатации и настройке игровой консоли на android "EXEQ Ray 2" (близнец JXD S5110b). При чем рассказывать я буду не о том, как она работает в качестве андроид-девайса, а исключительно в качестве эмулятора старых игровых консолей — Sega, NES (денди), SNES, DS, и т.п. Ведь именно в качестве портативного эмулятора я ее и покупал.

Быстро пробежимся по скучным техническим характеристикам:
  • Габариты: 195х87х17 мм, 232 г
  • Android 4.1.1 с root-правами «из коробки»
  • Экран 5'', глянцевый, TN, 800x480, эмкостной тач на 5 касаний
  • 8 Gb памяти + microSD
  • 2-ядерный 1.5 GHz CPU
  • Wi-Fi, mini-HDMI, акселерометр, камера 0.3 MPx
  • Два аналоговых стика, два бампера (шифта), D-Pad, 4 кнопки, start, select
  • Аккумулятор: Li-Ion 2200 mAh (3 часа игры)
  • Стоимость: ~4200 руб.

В видеоролике ниже я покрутил приставку в руках, немного рассказал о ней и показал, как она работает:



Для всех, кто заинтересовался, далее я расскажу о всех проблемах, с которыми я столкнулся и расскажу, как их решал.
Читать дальше →
Total votes 52: ↑47 and ↓5 +42
Comments 29

Создание игры на ваших глазах — часть 6: Поговорим о пиаре инди игр

Reading time 5 min
Views 34K
В предыдущих статьях я рассказывал о технической стороне проекта, а сегодня давайте поговорим о пиаре. Об инди-пиаре. Я поделюсь некоторыми соображениями, а главное — опытом. Хоть и небольшим, но все-таки реальным.

Напомню, что мы делаем стратегию/тайкун с прицелом на ПК (Steam) с премиум монетизацией (никакого фритуплея). Следовательно, в этом ключе я и буду рассказывать.

Итак, ни для кого не секрет, что пиариться — трудно. И самое главное — не забывайте о том, что думать о раскрутке вашей игры нужно заранее, а не после релиза. Вообще, первое, что следует сделать — это прочитать книгу Галенкина. Там много всего полезного.

По поводу “когда начинать пиариться” там же есть цифра “за пару месяцев до релиза” для мобильного проекта и до полугода для ПК. Это связано с тем, что на всем протяжении вам надо поддерживать интерес потенциального покупателя к вашей игре. И продолжительность этой заинтересованности разная для разных платформ.
Читать дальше →
Total votes 34: ↑30 and ↓4 +26
Comments 13

Об участии в GamesJamGAMM: Project «Heartbeat»

Reading time 3 min
Views 11K
В ночь с воскресенья на понедельник закончился прием работ на GamesJamGAMM. Это был недельный гейм джем, где нужно было разработать игру на тему “фобии”.

В этой статье мы расскажем о том, как мы делали для него свой проект.



У нас уже есть опыт участия в подобных мероприятиях. Мы участвовали в недельном гейм джеме от NextCastle (о чем уже писали на Хабре), и в месячном фестивале от Канобу (цикл статей на Хабре).

Каждый раз мы начинали с абсолютного нуля, использовали разные технологии и пытались реализовать разные идеи.
Читать дальше →
Total votes 29: ↑24 and ↓5 +19
Comments 12

GamesJamKanobu закончен. Победители объявлены

Reading time 1 min
Views 10K
Итак, на протяжении всего февраля Kanobu проводила свое мероприятие, названное GamesJamKanobu. Правда, на деле это оказался не классический «гейм джем», а скорее фестиваль, в котором могли поучаствовать все, кто хотел.



Не было ни темы, ни даже условия «делать все за месяц». Так что кто-то делал реально за 1 месяц, а кто-то приходил с проектом, который делает уже не первый год.

Мероприятие точно удалось. Для кого-то оно стало пинком. Кто-то нашел в свою команду недостающих членов. Да и вообще — оно показало, что индустрия жива. Ведь на конкурс было подано более 400 проектов!
Читать дальше →
Total votes 33: ↑30 and ↓3 +27
Comments 8

Создание игры на ваших глазах — часть 5: Промежуточный итог (прототип)

Reading time 3 min
Views 15K
Итак, прошло чуть больше месяца с тех пор, как мы начали нашу серию статей о нашей игре, и пришло время подвести небольшой промежуточный итог.



В начале марта мы подали заявку на участие в GamesJamKanobu и весь этот месяц усиленно писали прототип нашей игры, ведь к 26.02 нужно было отправить на судейство готовый билд.

Ниже я приведу то, что мы успели сделать, а также поделюсь о том, каким образом мы работаем над маркетингом.
Читать дальше →
Total votes 41: ↑37 and ↓4 +33
Comments 40

Создание игры на ваших глазах — часть 4: Шейдер для fade in по палитре (а-ля NES)

Reading time 7 min
Views 22K
Сегодня я расскажу о реализации шейдера, позволяющего сделать fade in/out по палитре, как это делалось в старых NES-играх и т.п.

Суть состоит в том, что при наличии ограниченной палитры цветов нельзя было постепенно затемнить (или наоборот вывести из темноты) картинку, т.к. просто напросто не существовало нужных цветов в палитре. И это решалось путем использования разных цветов, которые воспринимаются как более темные. То есть нужно вам сделать fade in желтого объекта, а в палитре нет темно-желтых оттенков — вот и приходится сначала делать объект синим (выглядит темным), потом — красным и т.п.

Ниже я покажу, как выглядит конечный вариант написанного шейдера:



Сразу только оговорюсь — применять или нет подобный шейдер в нашей игре, мы еще не решили. Так как выглядит он на современном пиксель-арте с большим количеством цветов, немного спорно.
Читать дальше →
Total votes 20: ↑16 and ↓4 +12
Comments 10

Создание игры на ваших глазах — часть 3: Прикручиваем скриптовый язык к Unity (UniLua)

Reading time 5 min
Views 50K

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

На этот раз поговорим о языке для написания внутриигровых скриптов.

В этой статье я расскажу, почему именно Lua, а не самописный велосипед. Зачем вообще игре может понадобится скриптовый язык. Какие тонкости есть при прикручивании этого дела к Unity и покажу как это делается на примере интеграции UniLua.

Сразу скажу, что к последнему информации в интернете почти что ноль, и половина этого нуля — на китайском. Так что, можно сказать, — держите эксклюзив.
Читать дальше →
Total votes 27: ↑22 and ↓5 +17
Comments 35

Создание игры на ваших глазах — часть 2: Шейдеры для стилизации картинки под ЭЛТ/LCD

Reading time 6 min
Views 75K
Поговорим на этот раз о технологии. В этой статье я расскажу и покажу, как в Unity создать шейдер для стилизации графики под старые ЭЛТ. Такой шейдер подойдет для пиксель-арта и для стилизации картинки под древнюю технику. Злоупотреблять им не стоит, но иногда использовать к месту — можно. (Специально уточню — я не предлагаю использовать такой эффект постоянно. Но, например, в заставках — он может прийтись к месту).



И сразу оговорюсь — я не владею глубинным пониманием шейдеров, а от читателя жду и того меньшего. Так что буду писать из расчета, что вы про шейдеры не знаете ничего, или почти ничего. И да, я попытаюсь вам пояснить самые базы работы шейдеров, так что если вы ничего о них не знаете — welcome!

Читать дальше →
Total votes 112: ↑103 and ↓9 +94
Comments 32

Создание игры на ваших глазах — часть 1: Идея, вижен, выбор сеттинга, платформы, модели распространения и т.п

Reading time 5 min
Views 40K


Введение


Данная статья является первой из запланированного цикла статей, посвященного разработке, дизайну и становлению нашей игры. Я намеренно не буду называть ни названия проекта, ни давать ссылок на него, чтобы пост не попал в “я пиарюсь”. Да, собственно, еще и пиарить толком нечего, т.к. проект находится в самом начале пути и мы планируем пройти этот путь вместе с теми, кому интересно понаблюдать за кухней true-инди.

Этот цикл задуман как некий живой дев-лог игрового инди проекта. Здесь я планирую рассказывать обо всем, что будет встречаться на пути — от решений по выбору сеттинга, гейм-дизайна и арта до технической реализации всего это дела.
Читать дальше →
Total votes 59: ↑50 and ↓9 +41
Comments 55

Опыт написания 2D MOBA-платформера за несколько дней

Reading time 5 min
Views 34K


Все началось с того, что на глаза случайно попался конкурс от NextCastle Party, где предлагалось в строго ограниченные сроки (тема была объявлена за неделю) создать игру.

Условием была обязательная возможность играть с живыми игроками за одним компьютером (не важно, pvp или кооператив, синхрон или асинхрон). А так же были ограничения по платформам — необходимо, чтобы игра шла в браузере.

Собственно, узнав про конкурс — решились поучаствовать. Смущало, правда, что в конкурсе можно использовать любые наработки… Ведь вдруг кто-то в этот момент делает именно такую игру и притащит на конкурс почти готовый проект? А у нас подходящих наработок — ну вообще нет. Ну да ладно, волков бояться — в лес не ходить. В конце концов, интересный опыт.
Читать дальше →
Total votes 47: ↑44 and ↓3 +41
Comments 13

Опрос-проверка социальной магии

Reading time 1 min
Views 13K
Какое-то время назад я столкнулся в социальной сети с подобной голосовалкой. Суть ее была в том, что люди, заранее не видя распределения процентов, выбирали тот или иной пункт, но в результате каким-то магическим образом распределение голосов было равно указанному.

С тех пор меня интересует вопрос — была ли это просто накрутка голосов или же тут работает какая-то психология?

В общем, вот вам голосовалка. Голосуйте за любой пункт и смотрите результаты.

PS: Вопрос, ответы и их порядок я скопировал с оригинала.

PPS: Пожалуйста, не публикуйте результаты голосования на видном месте в комментариях. И не смотрите на опубликованные, чтобы эта информация не повлияла на ваш выбор.
Total votes 59: ↑39 and ↓20 +19
Comments 50

Школьника из Техаса посадили за шутку в компьютерной игре

Reading time 1 min
Views 198K
18-летнего школьника из Техаса посадили в тюрьму за саркастическую шутку в компьютерной игре League of Legends и ему грозит 8 лет.

image

История началась в феврале 2013. 18-летний школьник Justin Carter играя в LoL, пошутил.

Во время игры его назвали сумасшедшим. На что он ответил:

— Ага, я точно не дружу с головой! Я собираюсь расстрелять всех детей в школе и съесть их еще бьющиеся сердца.
— lol
— jk (сокращение от «just kidding»)
Читать дальше →
Total votes 185: ↑158 and ↓27 +131
Comments 287

В Киеве прошел Kiev Games Night на тему «Как открыть свою геймдев студию»

Reading time 2 min
Views 17K
Удивительно, что никто так и не осветил это событие. Неделю назад в Киеве прошла сходка-конференция «Games Night». Событие было разбито на две части: блок мини-докладов (по 5-10 минут каждый) и круглый стол, где докладчики отвечали на вопросы аудитории (которой собралось неожиданно много). А так же — свободное общение. Вход был свободный.

Вообще — изначальным посылом встреч этого формата было «дать людям возможность познакомиться/пообщаться», т.к. наш exUSSR-геймдев отличается довольно низким количеством горизонтальных связей, что, порой, является проблемой.

Каждый из выступающих делился своим опытом создания игродельчесской студии. Рассказывал о проблемах, с которыми пришлось столкнуться, давал советы и т.п.

Докладов было 11:

  • Андрей Арутюнян (Colibri Games) — о том, как команда из 3-х человек сделала свою игру
  • Андрей Прохоров (4A Games) — авторы серии игр Metro и т.п.
  • Артем Мироновский (Nival Red) — про то, как команде пойти под крыло гиганта Nival
  • Олег Яворский (Vostok Games) — про то, как авторы S.T.A.L.K.E.R. искали финансирование на сиквел
  • Игорь Карев (Tatem Games) — авторы «Анабиоза» и многих друих игр
  • Кен Ливер (Eastlabs) — инкубатор игровых стартапов
  • Олег Клаповский (GOG.com) — 3-я по масштабу платформа после Steam и Origin
  • Евгений Жуков (Digitilus) — про то, как и когда выходить на Kickstarter
  • Олег Придюк (Unity) — про то, как команда из 3х человек в гараже на деньги одного из родителей написала всемирно известный движок
  • Андрей Ионес (Saber Interactive) — о разработке на консолях
  • Сергей Климов (Daedalic) — про квесты и сторителлинг в играх

Видео выступлений:


Читать дальше →
Total votes 30: ↑28 and ↓2 +26
Comments 4

Кросс-платформенная мобильная игра и палки в колеса от Android

Reading time 4 min
Views 57K
В этой статье я хочу поделиться с вами нашим опытом разработки мобильной кросс-платформенной (iOS/Android) игры.

Игру мы писали на Unity, а сама графика — спрайтовая. Но многое из сказанного ниже будет справедливо также и для других кросс-платформенных движков, а так же — для полноценного 3D.

Начну я свой рассказ с заблуждения.

Миф о кросс-платформенности.


Когда мы с командой начинали разработку этого проекта на большом и очень кросс-платформенном движке Unity (который также поддерживает Win, Mac, XBox, PS3, PSP, и т.п.) — то мы надеялись на то, что Unity возьмет всю заботу о кросс-платформенности на себя, а наша задача будет только жать «publish» под разные платформы и пить кофе.

Да, конечно же, мы знали о фрагментации платформы, но по большей части заточку под андроид мы ожидали увидеть в области графики (адаптация под разные разрешения, диагонали и dpi) и быстродействия (ясно, что то, что потянет один дроид — другому не под силу).

Но не все так просто.
Читать дальше →
Total votes 100: ↑86 and ↓14 +72
Comments 104

Elite Dangerous — Kickstarter возрождает еще одного ветерана

Reading time 1 min
Views 12K
Уже прошло более двух недель на кикстартере собирают деньги на продолжение культового симулятора космического наемника — «Elite: Dangerous».

Нам обещают огромную процедурно-генерированную вселенную, основанную на реальных кривых распределения масс, классическую гибкость и открытый мир. А так же глобальный мультиплеер, где вселенная населена другими игроками.

Однако, с приходом мультиплеера у нас отберут режим ускорения времени. Но обещают заменить «локальными гиперпрыжками».



На данный момент проект собрал более 500 тыс. фунтов из запрошенных 1,25 млн. И еще остается 45 дней.
Читать дальше →
Total votes 46: ↑34 and ↓12 +22
Comments 30

ФАС постановила: реклама — не реклама, если там есть обращение. А спам — не спам

Reading time 1 min
Views 128K
Помните мой топик, где я жаловался на ежедневный спам от МТС?

В какой-то момент меня это достало вконец и я написал жалобу в РосКомНадзор. Они ответили, что этим не занимаются, и переправили ее в ФАС.

Итак, сегодня пришел ответ из ФАС. И им я был крайне удивлен:

Предложения об оказании ОАО «МТС»....не попадают под определение рекламы, содержащейся в ст.3 ФЗ «О рекламе»: реклама-информация, распространённая любым способом, в любой форме и с использованием любых средств, адресованная неопределённому кругу лиц и направленная на привлечение внимания к объекту рекламирования, формирование или поддержание интереса к нему и его продвижение на рынке, так как адресованы конкретному лицу – своему абоненту.

Оказывается, подобные сообщения не могут быть признаны рекламой, т.к. в них есть обращение «к конкретному лицу» (в данном случае — «конкретным» лицом является бездушное «уважаемый абонент»). Ибо все спам-смс начинались с фразы «Уважаемый абонент! Для использования… бла-бла-бла.....»

Т.е. получается, что если по ТВ вам скажут «Покупайте Доширак!» — то это будет реклама. А вот если скажут «Зритель! Покупай Доширак!» — то это уже не реклама…

Я, конечно, — не юрист… Но заключение ФАС вызвало у меня просто недоумение. А также — очень спорное утверждение, что «уважаемый абонент» — это, оказывается, — «конкретное лицо»…

Под катом — полная версия ответа.

Читать дальше →
Total votes 164: ↑153 and ↓11 +142
Comments 105

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity