Я хотел бы рассказать вам о своем опыте в разработке инди игры. Мой опыт ограничен всего одной игрой, которая на данный момент находится в “раннем доступе” в Steam. Это не много, но мне кажется мне есть чем поделиться. Если не хочется читать все — в конце самое интересное кратко.
User
Эволюционные вычисления: учим табуретку ходить
15 min
38KTranslation
Этот туториал посвящён эволюционным вычислениям, тому, как они работают и как реализовать их в своих проектах и играх. После прочтения статьи вы сможете овладеть мощью эволюции для поиска решений задач, решить которые вы не способны. В качестве примера в этом туториале будет показано, как эволюционные вычисления можно использовать для обучения простого существа ходьбе. Если вы хотите ощутить мощь эволюционных вычислений в браузере, оцените Genetic Algorithm Walkers.
+56
Как я написал книгу почти по социнжинирингу
5 min
21KКогда от издательства пришло письмо про готовность, я старался не дышать. Кенгуру валлаби с детёнышем в сумке уже подошла на три метра и шевелила носом. Боялась и что-то подозревала, но морковки ей хотелось больше. Потом было ещё много австралийских приключений вдали от цивилизации, поэтому про поступление книги в магазины я узнал уже из писем читателей. Оказалось, нужно не только владельцам бизнеса. Это удивляло.
Если коротко – она о том, как рассказывать истории. Точнее даже так: как в работающем бизнесе (или другом проекте) выбрать самые интересные истории, правильно их подать, в полной мере собрать факты и не облажаться потом. Методология построена именно на «не облажаться потом», то есть на проверке фактов и очень спокойной работе без истерических криков. Это продаёт, и этот канал рассказов о своих проектах называется контент-маркетингом (термин появился позже, чем тот же Фёдор из Сыктывкара начал рассказывать про свой книжный бизнес, но раньше, чем он начал печь пиццу). Ещё Евгений Чичваркин с Евросетью живо чувствовал, что нужно что-то такое – но он хотел снимать шоу про работу магазина, чтобы с отжимом поставщиков, собеседованиями, злыми клиентами, инвентаризациями и другими взлётами и падениями.
Я собрал в кучу всё то, что хотел рассказать про то, как писать посты, собирать информацию для них, как убеждать на сайте и прочее-прочее-прочее. Но всё равно много где – психология влияния.
+48
Как я проходил собеседования на позицию Junior .Net Developer
8 min
266KПриветствую всех. Сегодня расскажу вам как я проходил собеседования в Москве на позицию .Net Developer. Усиленно готовился к собеседованиям месяц, целыми днями сидел и смотрел вопросы и пытался отвечать на них, а также читал книжки по С#. В статье привожу интересные задачки и вопросы, которые мне задавали в разных компаниях в Москве. Заранее скажу, что я попал в ту компанию, в которую хотел. Я прошел 4 собеседования в этой компании и меня наконец то взяли! Много статей было прочитано в частности здесь и надеюсь, что эту статью тоже будут читать начинающие Net разработчики и спрашивать все в комментариях.
Кому интересна тема прохождения собеседований, прошу под кат!
Кому интересна тема прохождения собеседований, прошу под кат!
+38
Усатый стрелок с полигональным пузом. Часть вторая
16 min
7.3KРассказ про разработку проекта похож на паутину: повсюду тянутся ниточки ассоциаций, истории про интересные идеи. А иногда нити повествования обвиваются коконом вокруг необычного бага. Вот и сейчас, материала накопилось столько, что приходится начинать работать над второй частью статьи до того, как первая опубликована.
А теперь, когда опубликована вторая часть, материала достаточно и для третьей части! :)
Сегодня в программе: смесь визуала и архитектуры проекта. Но сначала, ещё парочка деталей про тени.
Итак, поехали!
+31
Как создаются визуальные эффекты для игр
14 min
38KTranslation
Основные задачи художников визуальных эффектов
Если говорить только о визуальных эффектах, то их можно разделить на два основных типа задач: геймплейные эффекты и природные эффекты (или эффекты окружений). Принцип их разделения зависит от конкретного проекта. Например в такой игре, как Castlevania (жанра hack'n'slash), 90% визуальных эффектов состояло в умениях персонажа и магии, сильно влиявших на геймплей. Такие задачи требуют серьёзного понимания механик игры и постоянного общения с командой дизайнеров, с которой нужно постоянно договариваться. Для примера давайте возьмём огнемёт. Дизайнеры геймплея подбирают область урона атаки, а затем вам необходимо создать эффект поверх отладочного цилиндра. Постепенно уменьшающийся огонь не полностью соответствует области урона, и дизайнеры начинают на это жаловаться. Вот один из примеров «конфликтов» между двумя дисциплинами, потому что если придерживаться строгих правил, огонь не будет похож на огонь. Поэтому приходится искать альтернативы и убеждать дизайнеров, что игрок не заметит, что небольшой исчезающий огонь не нанёс никакого урона.
Среди прочих жанров, геймплейные эффекты более «важны» в файтингах и RPG.
Существуют и другие игровые жанры, например, шутеры (в особенности это касается реалистичных), в которых природные эффекты так же важны, как и геймплейные. В этом случае художник, ответственный за природные эффекты, становится практически художником по окружениям и в основном сотрудничает с этой командой. Примерами природных эффектов являются водопады, туман, дождь и т.д. Больше всего природных эффектов я создал в Gears of War 4, где мы работали над многопользовательскими картами и должны были заботиться о влиянии эффектов на производительность, потому что от игры требовалось работать в 1080p при 60 fps.
+43
Руководство начинающего программиста графических шейдеров
8 min
43KTutorial
Translation
Умение писать графические шейдеры открывает перед вами всю мощь современных GPU, которые сегодня уже содержат в себе тысячи ядер, способных выполнять ваш код быстро и параллельно. Программирование шейдеров требует несколько иного взгляда на некоторые вещи, но открывающийся потенциал стоит некоторых затрат времени на его изучение.
Практически каждая современная графическая сцена являет собой результат работы некоторого кода, написанного специально для GPU — от реалистичных эффектов освещения в новейших ААА-играх до 2D-эффектов и симуляции жидкости.
Сцена в Minecraft до и после применения нескольких шейдеров.
Программирование шейдеров иногда кажется загадочной черной магией. Тут и там можно встретить отдельные куски кода шейдеров, которые обещают вам невероятные эффекты и, возможно, вправду способны их обеспечить — но при этом совершенно не объясняют, что именно они делают и как добиваются столь впечатляющих результатов. Данная статья попробует закрыть этот пробел. Я сфокусируюсь на базовых вещах и терминах, касающихся написания и понимания шейдерного кода, так что впоследствии вы сами сможете менять код шейдеров, комбинировать их или писать свои собственные с нуля.
Практически каждая современная графическая сцена являет собой результат работы некоторого кода, написанного специально для GPU — от реалистичных эффектов освещения в новейших ААА-играх до 2D-эффектов и симуляции жидкости.
Сцена в Minecraft до и после применения нескольких шейдеров.
Цель этой инструкции
Программирование шейдеров иногда кажется загадочной черной магией. Тут и там можно встретить отдельные куски кода шейдеров, которые обещают вам невероятные эффекты и, возможно, вправду способны их обеспечить — но при этом совершенно не объясняют, что именно они делают и как добиваются столь впечатляющих результатов. Данная статья попробует закрыть этот пробел. Я сфокусируюсь на базовых вещах и терминах, касающихся написания и понимания шейдерного кода, так что впоследствии вы сами сможете менять код шейдеров, комбинировать их или писать свои собственные с нуля.
+86
Типографика: процесс выбора шрифта
5 min
25KTranslation
Один из самых ценных навыков, которые может освоить дизайнер — это умение подбирать шрифты. Это объясняется тем, что текст является одним из основных способов коммуникации дизайнера с пользователем. Типографика имеет решающее значение для дизайна.
Типографика — вещь сложная и красивая. Некоторые посвящают работе с ней всю свою карьеру. К счастью для нас, они подробно описывают свой опыт, поэтому к нашим услугам имеется целая куча онлайн-ресурсов на тему типографики.
Эта статья замышлялась как небольшое введение для тех, кто хочет научиться правильно подбирать шрифты для дизайна. Она подтолкнёт вас к тому, чтобы расширять набор шрифтов и их сочетаний, которые вы используете в макетах, не ограничиваясь хорошо знакомыми вариантами.
Типографика — вещь сложная и красивая. Некоторые посвящают работе с ней всю свою карьеру. К счастью для нас, они подробно описывают свой опыт, поэтому к нашим услугам имеется целая куча онлайн-ресурсов на тему типографики.
Эта статья замышлялась как небольшое введение для тех, кто хочет научиться правильно подбирать шрифты для дизайна. Она подтолкнёт вас к тому, чтобы расширять набор шрифтов и их сочетаний, которые вы используете в макетах, не ограничиваясь хорошо знакомыми вариантами.
+12
Как я создаю базу данных для своих приложений
7 min
125KTutorial
Recovery Mode
Всем привет! Меня зовут Олег и я программист-любитель под Android. Любитель потому что в данный момент я зарабатываю деньги программированием в совсем другом направлении. А это хобби, которому я посвящаю свое свободное время. К сожалению у меня нет знакомых программистов под Android и все свои базовые знания я черпаю либо из книг, либо из интернета. Во всех тех книжках и статьях в интернете, которые я читал, созданию базы данных для приложения отводится крайне мало места и по сути все описание сводится к созданию класса являющегося наследником SQLiteOpenHelper и последующему внедрению SQL кода в Java код. Если не считать, что мы получаем плохо читаемый код (а если в нашем приложении появляется больше 10 таблиц, то вспоминать все эти взаимосвязи между таблицами тот еще ад), то в принципе жить можно конечно, но как-то совершенно не хочется.
Забыл сказать самое главное, можно сказать что это моя проба пера тут. И так поехали.
Забыл сказать самое главное, можно сказать что это моя проба пера тут. И так поехали.
+13
5 курсов, которые помогут начать свой путь в дизайне игр
2 min
35KTranslation
Это статья для тех, у кого появилось желание получить или улучшить навыки дизайна игр. В ней я приведу пять лучших, на мой взгляд, курсов на эту тему. Независимо от того, что именно вы хотите создавать – персонажей, окружения или пейзажи, – по каждому направлению вы найдете подробные видеоуроки со всей необходимой информацией.
+18
Unity3D + Google Services: мультиплеер для вашего проекта на Android и iOS
7 min
53KВ этой статье я хочу рассказать об использовании игровых сервисов Google в вашем приложении на Unity. На написание данного материала меня сподвигло достаточно большое количество проблем, встретившихся во время разработки нашего приложения, а также отсутствие каких-либо материалов на русском языке по этой теме. Да и собственно, на английском тоже. Описание использующегося плагина на гитхабе очень краткое и не дает ответа на возможные проблемы с работой сервисов. Думаю, здесь не стоит пояснять, что мультиплеер и рейтинги игроков зачастую повышают интерес пользователей, а следовательно и вашу возможную прибыль. А благодаря данной статье начинающие разработчики смогут начать использовать данные преимущества.
+11
Реализация мультиплеера в игре. Сравнение возможностей Game Center, Steamworks и GameSparks
8 min
16KИгры с многопользовательским режимом значительно интересней аналогичных игр без него. Но реализация мультиплеера подразумевает под собой наличие своего сервера, кода, реализующего сетевое взаимодействие, матчмекинг и многое другое.
К счастью, существует множество готовых решений. В ходе разработки своей игры я опробовал следующие варианты:
Под катом я расскажу про каждый из этих вариантов, основные возможности, возникшие трудности, плюсы и минусы. От кусков кода я воздержусь. Все есть в документации.
К счастью, существует множество готовых решений. В ходе разработки своей игры я опробовал следующие варианты:
- Game Center (игры под iOS)
- Steamworks (игры для Steam)
- GameSparks (кроссплатформенное решение)
Под катом я расскажу про каждый из этих вариантов, основные возможности, возникшие трудности, плюсы и минусы. От кусков кода я воздержусь. Все есть в документации.
+12
Инструкция по публикации Android-приложения в Google Play
12 min
380KTutorial
Вслед за инструкцией по публикации приложения в App Store выкладываем внутренний свод правил Лайв Тайпинг по публикации приложений в Google Play, составленный отделом менеджеров при активном участии тимлида отдела Android-разработки Александра Мирко. Вне зависимости от того, насколько ты крутой и опытный проджект-менеджер, всегда есть шанс забыть что-нибудь. Эта инструкция призвана облегчить вам жизнь.
Итак, что нужно сделать PM`y в ходе публикации:
Все подробности — под катом.
UPD от 25.04.2017: добавлены разделы про альфа- и бета-тестирование и поэтапное внедрение, дополнены разделы «Обеспечение сборки наличием цифровой подписи» и «Технические требования к apk-файлу», сделано замечание про ASO и внесены косметические правки.
Итак, что нужно сделать PM`y в ходе публикации:
- Создать аккаунт в Google Play Developer Console для заказчика, если у заказчика такового нет, или предложить произвести публикацию с нашего аккаунта.
- Оформить privacy policy.
- Подготовить маркетинговые материалы (иконка, скриншоты, APK, баннер, текст, проморолик).
- Обеспечить сборку наличием сертификата цифровой подписи.
- Настроить оплату за пользование приложения.
- Отправить сборку в Google Play.
Все подробности — под катом.
UPD от 25.04.2017: добавлены разделы про альфа- и бета-тестирование и поэтапное внедрение, дополнены разделы «Обеспечение сборки наличием цифровой подписи» и «Технические требования к apk-файлу», сделано замечание про ASO и внесены косметические правки.
+9
Unity3D tips and tricks
3 min
23KБыло уже несколько статей подобного плана, где рассказывались разные трюки и приёмы для Unity. Что-то было совсем очевидно и только для новичков, что-то для более продвинутых товарищей. Хочу внести свою скромную лепту.
+22
Unity3D tips and tricks 2
4 min
9.1KПосле невероятного успеха первой части (22 человекам понравилось и было целых 9 комментов, 3 из которых мои) — автор (я) решил написал продолжение повести о захватывающих приключениях в мире Unity3d.
Постарался подобрать свеженькие фишки.
+13
Бесплатные плагины, инструменты и сервисы для разработки игры на юнити
3 min
30KВсем привет. В своей статье я хочу рассказать про бесплатные юнити плагины, которые использовал для создания своих игр. Есть плагины для разработки, монетизации, аналитики, соцсетям и т.д. Вот ссылка на список в гитхабе.
+17
3D моделирование и анимация: руководство для начинающих
9 min
72KTutorial
И ещё немного полезной информации от партнёров: на этот раз компания Akadem представляет подробный туториал для начинающих разработчиков, которые желают освоить азы 3D моделирования и анимации для будущих проектов. Основываясь на собственном опыте создания симулятора паркура и адаптациии его для разных платформ, авторы подробно разбирают процесс создания персонажа экшн-игры, реализации базовых движений и локаций.
«Привет, читатель Хабра! Если ты чувствуешь, что ещё мало продвинулся в разработке игр на Unity3D, и мечтаешь о чём-то большем и, главное, динамичном — добро пожаловать под кат. Там мы расскажем о том, как создать своего собственного персонажа, не имея навыков 3D моделирования, импортировать его в Unity-проект и заставить двигаться.
«Привет, читатель Хабра! Если ты чувствуешь, что ещё мало продвинулся в разработке игр на Unity3D, и мечтаешь о чём-то большем и, главное, динамичном — добро пожаловать под кат. Там мы расскажем о том, как создать своего собственного персонажа, не имея навыков 3D моделирования, импортировать его в Unity-проект и заставить двигаться.
+11
Опасайтесь прозрачных пикселей
6 min
45KTranslation
Если вы используете в своей игре спрайты с прозрачностью (а обычно так и бывает, как минимум для UI), то вам, вероятно, стоит уделить внимание к полностью прозрачным пикселям текстур (или «текселам»).
Даже если значение альфа-канала равно 0, с пикселем всё равно связано значение цвета. Этот цвет ни на что не влияет, так ведь? В конце концов, пиксель полностью прозрачен, кому есть дело до его цвета…
Так вот, на самом деле этот цвет важен, если этого не понимать, то можно получить артефакты, которые заметны во многих играх. Чаще всего искажения очень малы и их не заметно, но иногда они действительно бросаются в глаза.
+144
Архитектура клиентского приложения (механизмы структуризации)
29 min
18KИстория первая
Некоторое время назад я работал в одной игровой компании, которой руководил немец. Создание игр не было основным бизнесом этого немца. Основные доходы он получал от продажи косметики и от сдачи коммерческой недвижимости в аренду. Наличие игровой компании было способом выделиться среди своих знакомых бизнесменов.
Игровая компания немца разрабатывала 3 вида игр:
- Флэш-игры для мобильных телефонов с поддержкой технологии J2ME.
- Обучающие игры для портативной игровой приставки Nintendo DS. Заказчиками этих игр были европейские издатели, а покупателями — родители, чьи чада имели проблемы с обучением по математике, английскому или немецкому языкам. Подразделение игр для Nintendo DS выпустило много игр. Хотя они и не стали AAA-тайтлами, но окупили свою разработку и принесли небольшую прибыль.
- Игры для платформы Nintendo Wii.
В последней команде был я. Команда должна была разработать игру для маленьких девочек по детскому бренду. Бренд был достаточно известен в Германии (это был основной рынок) и в ряде других европейских стран: во Франции и в Великобритании.
+15
Учимся у мастеров: дизайн уровней Legend Of Zelda
9 min
12KTranslation
Возвращаясь в поисках знаний к прохождению игр, в которые играл в детстве, я всегда опасаюсь, что игры эры NES и более ранние слишком стары, чтобы получить от них какие-нибудь уроки.
Мне кажется, что в них отсутствуют многие элементы современного дизайна игр: никакого обучения, резкие изменения сложности, непродуманный дизайн уровней, и так далее. До написания этой статьи у меня было впечатление, что многие освоенные мной «правила хорошего дизайна» изобретены и начали использоваться в эру SNES.
+15
Information
- Rating
- Does not participate
- Location
- Красноярск, Красноярский край, Россия
- Registered
- Activity