Pull to refresh
57
0

Главред

Send message

«Процедурное рисование» в ComfyUI

Reading time7 min
Views36K

Кто интересуется темой рисующих нейросетей знают, что сейчас самый продвинутый и часто используемый интерфейс для Stable Diffusion (далее SD) это Automatic1111. Он позволяет использовать, вероятно, все существующие возможности SD на сегодня. Множество расширений, регулярные обновления и поддержка сообщества делают его мощным и удобным инструментом для генерации изображений. Но есть и альтернативные решения, одно из которых я сегодня рассмотрю.

Статья подойдет как тем кто уже пользуется Automatic1111, так и тем кто только планирует более глубоко погрузиться в мир "процедурного рисования".

Читать далее
Total votes 70: ↑70 and ↓0+70
Comments26

Производство креативов для мобильной игры с нуля

Reading time5 min
Views8.1K

Изначально наш отдел маркетинга создавал большие видеролики про апдейты игры и разные трейлеры. Такой контент хорошо подходит для PR (например, показать на конференции или привлечь внимание игроков), но не для закупки трафика. К тому же было мало взаимодействий с продуктом, аналитикой и отчетами, что тоже стало проблемой. 

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

Читать далее
Total votes 32: ↑31 and ↓1+30
Comments1

Переработали батлрояль и увеличили его онлайн в 2 раза

Reading time9 min
Views9.4K

В нашей игре режим королевской битвы появился в 2018 году, когда жанр был на пике популярности. С тех пор батлрояль успел надоесть индустрии — игроки наигрались и вернулись в привычные дезматчи с маленькими картами и кучей фана. А огромный режим остался.

Нам захотелось вновь подстегнуть интерес опытных игроков, а также привлечь новичков, которые раньше там долго не задерживались. В итоге с нуля пересобрали баланс, добавили расходники, ботов, туториал, а еще поработали над лутом и улучшили UI. Обо всем этом — под катом.

Читать далее
Total votes 58: ↑53 and ↓5+48
Comments7

Elden Ring игнорирует 20 лет дизайна опенворлдов, и игре это только на пользу

Reading time5 min
Views37K

Как и любой проект From Software, Elden Ring похвалили практически со всех сторон — и пресса, и игроки. Любопытно, что несмотря на восторженные отзывы большинства, некоторые разработчики считают, что «ужасное управление» и «плохой UX» являются секретом популярности проекта.

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

Читать далее
Total votes 77: ↑67 and ↓10+57
Comments123

Устану ли я играть, нужно ли уметь кодить и чем вообще занимаются QA в геймдеве

Reading time11 min
Views33K

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

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

Читать далее
Total votes 59: ↑58 and ↓1+57
Comments34

Децентрализованная конфигурация webpack или как упростить сборку проекта

Reading time8 min
Views8.8K

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

Если провести аналогию с обычным кодом, то достижение таких объёмов в рамках одного модуля/класса/компонента/сущности становится сигналом, чтобы заняться декомпозицией и разделить ответственность по более мелким и независимым составляющим.

Но если говорить о конфигурации сборки, то такая декомпозиция скорее редкость, и в больших проектах часто можно встретить огромные webpack.config.js, модификация которых может доставить немало проблем и привести к ошибкам.

Если вам хочется сделать работу со сборкой проще и надёжнее при модификациях, то добро пожаловать под кат.

Читать далее
Total votes 51: ↑51 and ↓0+51
Comments19

Кластеризация изображений с помощью нейросети CLIP

Reading time5 min
Views5.9K

В статье пойдёт речь о том, как можно автоматически разделить датасет изображений на кластеры, которые поделены по качественному контекстному признаку, благодаря эмбедингам из нашумевшей нейронной сети CLIP от компании Илона Маска. Расскажу на примере контента из нашего приложения iFunny.

Кластеризация считается unsupervised задачей — это значит, что нет никакой явной разметки целевых значений, то есть нет «учителя». В нашем случае мы загружаем некий датасет картинок и хотим произвольно, но качественно побить его на кластеры. 

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

Под катом расскажу, как мы построили логичную кластеризацию с помощью библиотеки HDBSCAN и векторов из нейронной сети CLIP, и каких результатов добились на выходе.

Читать далее
Total votes 53: ↑52 and ↓1+51
Comments11

Советы по разработке игр от создателя Civilization Сида Мейера

Reading time14 min
Views31K

В своей книге «Сид Мейер: Жизнь в мире компьютерных игр» знаменитый разработчик рассказывает о ключевых моментах карьеры, много шутит и через всю книгу дает советы и лайфхаки по разработке игр. А в этой статье основные из них — перевод под катом.

Читать далее
Total votes 63: ↑63 and ↓0+63
Comments27

«Право на забвение» или как просто удалять персональные данные по запросу пользователя

Reading time8 min
Views11K

Удалять персональные данные пользователя по его запросу, чтобы продукт соответствовал законам CCPA или GDPR, можно по-разному. Хоть вручную каждую заявку на почте разбирать. Главное — сделать процесс максимально простым и понятным для пользователя. А это уже хороший повод задуматься о некоторой автоматизации.

В статье на примере мобильного приложения iFunny расскажу про систему обработки запросов на удаление данных. Теперь заявки приходят сразу конкретизированными, а саппорт тратит в 2 раза меньше времени на их рассмотрение.

Под катом — о том, как происходит приём заявки, обработка, выставление статусов, хранение в системе учёта и так далее.

Читать далее
Total votes 43: ↑42 and ↓1+41
Comments2

Транспорт в PvP-шутере на Unity: добавляем и синхронизируем

Reading time6 min
Views6.6K

Когда мы начали разработку батлрояля на 100 игроков, то решили сделать самую большую карту в нашем шутере — 2 на 2 километра против стандартных 200 x 200 метров. Но для таких масштабов нужны были более быстрые способы перемещения, чем просто пешком. Так появилась задача добавить транспорт, которого раньше в проекте не было.

В статье расскажу, как мы добавили автомобили в мобильный PvP-шутер на Unity: разберу префаб транспорта, синхронизацию игроков и поделюсь небольшими лайфхаками.

Читать далее
Total votes 45: ↑44 and ↓1+43
Comments0

11 признаков Senior QA, к которым я пришёл за годы работы в тестировании

Reading time5 min
Views49K

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

За 9 лет работы в роли Head of QA, я для себя сформулировал набор качеств и модель поведения, которым должен соответствовать настоящий сеньор QA. Своими наблюдениями поделился под катом.

Читать далее
Total votes 76: ↑69 and ↓7+62
Comments43

Как Discord стал нашим основным инструментом для сбора фидбека и позволил наладить систему саппорта почти без вложений

Reading time15 min
Views13K

Сейчас наш Discord-сервер — это самый эффективный способ сбора фидбека у социально активной кор-аудитории PvP-шутера. Сервер начинался как простой эксперимент, мы не понимали, насколько он будет полезен, но результаты превзошли ожидания. Настолько, что мы сделали еще и отдельный сервер, куда полностью перевели весь саппорт.

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

Ниже расскажу про внутреннюю организацию Discord-сервера Pixel Gun 3D — в первую очередь материал будет полезен КМ и саппортам, которые не работали с этим инструментом (или работали, но не получали максимум профита), а также геймдизайнерам. Затронем роли участников, каналы, ботов и способы защиты, активности и конкурсы, повышающие вовлеченность, а также решение тикетов, когда игроки сами помогают друг другу.

Читать далее
Total votes 45: ↑44 and ↓1+43
Comments7

Персонализация инвайтов в приложении с использованием AppsFlyer

Reading time5 min
Views94

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

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

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

Провели внутренний хакатон впервые после карантина: как мы обучали машинки устраивать в офисе ДТП

Reading time7 min
Views3.5K

Пандемия потихоньку отступает, вакцинация полным ходом, а мы с апреля снова открыли двери офиса для всех желающих. Для нас это хорошая новость, поэтому решили слегка отметить событие — провести внутренний хакатон с подведением итогов оффлайн. Целей несколько: смена фокуса по задачам, новый опыт и живое общение после самоизоляции. Рабочие моменты на это время можно было отложить.

Задание полностью отличалось от того, чем мы привыкли заниматься, разрабатывая мобильные приложения — нужно было научить машинку на основе Raspberry Pi 4.0 с камерой объезжать препятствия, искать врага определённого цвета и идти на таран. Кто показал в среднем лучший результат — тот и выиграл.

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

Read more
Total votes 40: ↑40 and ↓0+40
Comments8

Хабрарейтинг 2020: Лучшие корпоративные блоги

Reading time7 min
Views6.7K
Привет, Хабр.

Это завершающая, третья часть неофициального рейтинга лучших статей Хабра 2020 года. В этот раз мы рассмотрим корпоративные блоги. Различными компаниями на Хабре было опубликовано около 9000 статей, и разумеется, среди них можно найти немало интересного.

Продолжение под катом.
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments6

Создание игры Tower Defense в Unity: баллистика

Reading time21 min
Views13K
[Первая, вторая и третья части туториала]

  • Поддержка разных типов башен.
  • Создание башни-мортиры.
  • Вычисление параболических траекторий.
  • Запуск взрывающихся снарядов.

Это четвёртая часть туториала, посвящённого созданию простой игры в жанре tower defense. В ней мы добавим башни-мортиры, стреляющие детонирующими при столкновении снарядами.

Туториал создавался в Unity 2018.4.4f1.


Враги подвергаются бомбардировке.
Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments3

Создание игры Tower Defense в Unity: башни и стрельба по врагам

Reading time17 min
Views11K
[Первая и вторая части туториала]

  • Размещаем на поле башни.
  • Целимся во врагов при помощи физики.
  • Отслеживаем их, пока это возможно.
  • Стреляем в них лазерным лучом.

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

Туториал создавался в Unity 2018.3.0f2.


Зададим врагам жару.

Создание башни


Стены только замедляют врагов, увеличивая длину пути, который им нужно пройти. Но цель игры — уничтожить врагов, прежде чем они доберутся до конечной точки. Эта задача решается размещением на поле башен, которые будут по ним стрелять.
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments1

Создание игры Tower Defense в Unity: враги

Reading time26 min
Views11K
[Первая часть: тайлы и поиск пути]

  • Размещение точек создания врагов.
  • Появление врагов и их движение по полю.
  • Создание плавного движения с постоянной скоростью.
  • Изменение размера, скорости и размещения врагов.

Это вторая часть туториала, посвящённого простой игре в жанре tower defense. В ней рассматривается процесс создания врагов и их движения к ближайшей конечной точке.

Данный туториал выполнен в Unity 2018.3.0f2.


Враги на пути к конечной точке.
Total votes 26: ↑26 and ↓0+26
Comments1

Создание игры Tower Defense в Unity, часть 1

Reading time29 min
Views19K

Поле


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

Это первая часть серии туториалов, посвящённых созданию простой игры в жанре tower defense. В этой части мы рассмотрим создание игрового поля, поиск пути и размещение конечных тайлов и стен.

Туториал создавался в Unity 2018.3.0f2.


Поле, готовое к использованию в тайловой игре жанра tower defense.

Игра жанра Tower Defense


Tower defense — это жанр, в которой целью игрока является уничтожение толп врагов, пока они не добрались до своей конечной точки. Игрок выполняет свою цель, строя башни, которые атакуют врагов. У этого жанра очень много вариаций. Мы будем создавать игру с тайловым полем. Враги будут двигаться по полю в сторону своей конечной точки, а игрок будет создавать им препятствия.
Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments0

Разработчикам игр пора перестать слушать своих фанатов?

Reading time4 min
Views18K
Тут был спор из-за статьи и я решил выложить ее перевод на всеобщее обозрение. С одной стороны, автор говорит, что разработчики не должны потакать игрокам в вопросах сценария. Если смотреть на игры, как на искусство, то я согласен — никто не будет спрашивать у комьюнити, какую концовку ему выбрать для своей книги. С другой стороны — человек оправдывает некоторых критиков (он предусмотрительно не называет конкретные примеры, но на ум приходит недавняя история с рекламным плакатом в Cyberpunk 2077). В общем, ситуация двоякая.

Дальше только перевод, а мнение автора может не совпадать с моим по целому ряду вопросов.
Читать дальше →
Total votes 48: ↑43 and ↓5+38
Comments53
1

Information

Rating
Does not participate
Registered
Activity