Всём привет, меня зовут Григорий Дядиченко и я технический продюсер. Сегодня хочется обсудить подготовку 2д арта. Существует, скажем так, хороший тон в плане подготовки графических ассетов. Исходя из контекста технических ограничений и удобства дальнейшей работы. Больше речь про Unity3d конечно, но многие вещи работают везде одинаково и по сути меняются в нюансах. Если вам интересная данная тема, то добро пожаловать под кат!
Дизайн игр *
Визуальное игростроение
- Новые
- Лучшие
- Все
- ≥0
- ≥10
- ≥25
- ≥50
- ≥100
Лекция 1. Flappy Bird. — CS50`s Introduction to Game Development с русскими субтитрами
Привет! Перевод второй лекции готов. Приятного просмотра)
Простой шутер от третьего лица на Unreal Engine. Часть 1
Эта статья писалась для новичков Unreal Engine, если вы профи, то вам будет скучно. Для нормального прочтения, осмысления и понимания происходящего ниже необходимо знать что такое переменная и их основные типы, что такое метод, булеву логику и самые базовые принципы программирования. Спасибо. Приступим.
Как устроена разработка обучающих игр
Благодаря превращению учёбы в игру дети с гораздо большим интересом учат английский язык, быстрее запоминают новые слова и грамматические правила. Как устроен процесс создания образовательной игры, в чем его особенности и как геймификация работает в процессе обучения английскому языку мне рассказал главный по играм в перспективном стартапе Novakid.
Photon Plugin: защищаем игровой процесс от читеров
По мере роста популярности нашего онлайн-шутера читеры все активнее его атаковали. Мы решили строить комплексную оборону по всем фронтам, где одним из шагов стала защита игрового процесса. Тогда взлому подвергались параметры здоровья, урона и скорострельности, кулдауны, количество патронов и многое другое — то, от чего в первую очередь страдали честные игроки.
Мы используем Photon Cloud для сетевого взаимодействия игроков, поэтому сразу стали искать удобное решение на его основе. И нашли Photon Plugin, который закрыл все потребности. Изначально его вводили только для защиты, но потом стали использовать и при разработке новых фичей, где требуется серверная логика. Как мы его внедряли — рассказал под катом.
Java. The composite pattern on Game Server
Паттерн Компоновщик - так же известен как Дерево, Composite.
Суть паттерна
Компоновщик - это шаблон структурного проектирования, который позволяет объединять объекты в древовидные структуры, а затем работать с этими структурами, как если бы они были отдельными объектами.
Проблема
Использование шаблона Composite имеет смысл только тогда, когда базовая модель вашего приложения может быть представлена в виде дерева.
Например, представьте, что у вас есть два типа объектов: конфигурация награды и конфигурация сундука. Сундук может содержать несколько Наград, а также несколько Сундуков меньшего размера. Эти маленькие сундуки также могут содержать некоторые награды или даже сундуки меньшего размера и т. Д.
Допустим, вы решили создать систему выдачи наград, в которой используются эти классы. Конфигурация Награды может содержать простые награды без упаковки в сундук, а также сундуки с наградами ... и другие сундуки. Как бы вы рассчитали все награды основываясь на такой конфигурации?
Вы можете попробовать прямой подход: развернуть все сундуки, просмотреть все награды и затем рассчитать награды по их типам. Это было бы осуществимо в реальном мире; но в программе это не так просто, как запустить цикл. Вы должны заранее знать классы наград и сундуков, которые вы проходите, уровень вложенности сундуков и другие неприятные детали. Все это делает прямой подход либо слишком неудобным, либо даже невозможным.
Тестовое задание — крышка гроба или ступенька вверх по карьерной лестнице?
Привет! Меня зовут Евгений Судак, и я два с половиной года руководил отделом геймдизайна в Pixonic. Сегодня я хотел бы поговорить о тестовых заданиях.
Каждый, кто искал работу в игровой индустрии и не только, так или иначе сталкивался с тестовыми заданиями. Разнообразие их не перестает поражать воображение. Короткие, длинные, общие или специфические. Все они объединены общим знаменателем: это тот момент, где соискателю предлагается продемонстрировать навыки и знания в безопасной тестовой среде.
В этой статье я разберу ТЗ для геймдизайнеров, которое я создал почти два года назад. Но кроме этого хотел бы поговорить о ситуации с тестовыми заданиями при трудоустройстве в целом.
Java. Adapter Pattern in Game Server
Адаптер - это шаблон структурного проектирования, который позволяет объектам с несовместимыми интерфейсами взаимодействовать друг с другом.
Так же известен как “Обертка”.
Проблема
Чтобы продемонстрировать этот шаблон, я буду использовать упрощенный пример игровой механики, в которой есть интерфейс IEnemy, но один из врагов отличается от других и не имеет реализации метода атаки. Вместо этого этот конкретный враг (SpecialEnemy) накладывает заклинания.
Аим-ассист в мультиплеерном шутере — как сделать правильно
Аим-ассист — вечная тема для споров среди игроков. Для одних это узаконенный чит, для других — инструмент комфортной игры. Этическую сторону вопроса сейчас обсуждать не будем, просто примем как факт, что большинству пользователей неудобно целиться на геймпадах и тачскринах. И это проблема.
Пару лет назад в нашем онлайн-шутере вообще не было аим-ассиста и автострельбы. Даже в сторе было написано, что Pixel Gun 3D — «hardcore shooter». Нас это устраивало, пока не стало сложнее привлекать новую аудиторию. Даже несмотря на обучение и матчмейкинг, новичкам было сложно освоиться.
На рынке тогда уже были шутеры с автодоводкой, но она была слишком навязчивая, чересчур влияла на игровой опыт и скилл игрока. Нам предстояло разработать систему получше — чтобы не разозлить бывалых хардкорщиков и не отпугнуть новичков. Рассказываю под катом, что из этого вышло.
Звук в геймдеве: чем занимается саунд-дизайнер
Звук в игре работает на вовлечение и фан так же, как арт и визуальные эффекты, но говорят про него намного реже. Спешим исправить эту несправедливость и подробнее рассказать о музыкальных специальностях в разрезе игровой разработки.
В этой статье отвечаем на вопросы, чем отличается саунд-дизайнер от композитора, как прийти в профессию, попасть в геймдев, составить хорошее портфолио и многое другое.
Строили любовь, а построили рабство. Как и для каких целей Roblox использует детей
На YouTube-канале «People Make Games» вышло видео под названием «Расследование: как Roblox эксплуатирует молодых разработчиков игр». В нем утверждается, что компания создала свой бизнес на желании детей заработать деньги на любимом деле. При этом до выплаты денег дело, разумеется, не доходит. Рассказываем главное из расследования и приводим альтернативное мнение о ситуации.
Java. Abstract Factory Pattern in Game Server
Абстрактная фабрика - это шаблон проектирования, который позволяет создавать семейства связанных объектов без указания их конкретных классов.
Проблема
Представьте, что мы создаем игру в которой будут различные игровые события, меняющие внешний вид игры. Ваш код состоит из классов, которые представляют:
Семейство сопутствующих игровых вещей, например: chest + unit + hero.
Несколько игровых событий. Например, продукты Chest + Unit + Hero доступны в следующих ивентах: Pirate, Space, Default.
Нам нужен способ создавать отдельные игровые предметы, чтобы они соответствовали другим предметам из того же ивента. Игрокам очень не нравится, когда они видят скины из разных ивентов.
Кроме того, мы не хотим изменять существующий код при добавлении в программу новых игровых вещей или ивентов. Игровые студии очень часто обновляют свои скины и добавляют новые ивенты, и вам не захочется менять основной код каждый раз, когда это происходит.
Решение
Первое, что предлагает шаблон «Абстрактная фабрика» - это явное объявление интерфейсов для каждого отдельного игрового предмета из ивента (например, сундук, юнит или герой). Затем вы можете заставить все варианты предметов следовать этим интерфейсам. Например, все варианты сундуков могут реализовывать интерфейс Chest; все варианты юнитов могут реализовывать интерфейс Unit и так далее.
Следующим шагом будет объявление абстрактной фабрики - интерфейса со списком методов создания для всех предметов, входящих в ивент (например, createChest, createUnit и createHero). Эти методы должны возвращать абстрактные типы продуктов, представленные интерфейсами, которые мы извлекли ранее: Chest, Unit, Hero и так далее.
CS50`s Introduction to Game Development с русскими субтитрами — Лекция 0. Pong
Посмотрела все лекции гарвардского курса по разработке игр и так вдохновилась, что захотела перевести их на русский. Изначально хотела просто добавить субтитры к оригинальному видео, но, к сожалению, на Youtube эту функцию убрали, поэтому пришлось загружать заново.
Кто и зачем ремастерит саундтреки из старых видеоигр
Разработчики часто «подтягивают» графику и геймплей, адаптируют их под современное железо. Но порой изменения касаются и звукового сопровождения игр и приобретают необычные формы — аудиоремастеры выходят на виниле или их выпускают фанаты тайтла своими силами. Рассказываем, как это выглядит.
Живи, умри, и снова: погружаемся в мир рогаликов
Что такое roguelike и roguelike-like? Почему проводилась целая конференция, чтобы это определить? Можно ли считать рогаликом реальную жизнь? Что сегодня может предложить один из самых суровых и не прощающих ошибок игровых жанров, и как попасть в правильный dungeon? Давайте разбираться!
Почему графику в видеоиграх по-прежнему так сложно создавать?
Введение
В этом посте будут рассмотрены трудности и аспекты производства, которые нужно учитывать при создании новых методик и алгоритмов рендеринга/графики, особенно в контексте прикладных исследований рендеринга реального времени. Я буду рассказывать о своём личном опыте работы над Witcher 2, Assassin’s Creed 4: Black Flag, Far Cry 4 и God of War.
Многие из этих трудностей легко упустить, хотя в продакшене они становятся настоящими проблемами. Однако вы можете с ними и не столкнуться, если только читаете о подобных методиках, работаете над исследованиями, пишете статьи или создаёте технологические демо.
Я слышал вопросы типа «почему эта великолепная исследовательская методика X не используется в продакшене?» и от геймеров, и от коллег из научных кругов. На то всегда бывают очень веские причины!
Источником вдохновения для этого поста также послужил мой шуточный твит о том, что создать впечатление о себе как об умном и опытном программисте графики можно, отказавшись от большинства методик рендеринга, потому что они не будут работать с растительностью. И да, в этом посте мы несколько раз вернёмся к теме растительности.
Я вспоминаю об этой теме ещё и каждый раз, когда слышу дискуссии о том, что «фотограмметрия, трассировка лучей, нейронный рендеринг, [вставить любую другую новую тему] станет универсальным решением для рендеринга и заменит всё остальное!». Спойлер: этого не случится (по крайней мере, в ближайшее время).
Подкаст «Хочу в геймдев» #29 — текстовая версия
Двадцать девятый выпуск - мы говорим о профессии 2D художник. В этом выпуске вы узнаете особенности работы художников: какие бывают виды художников, какие базовые навыки необходимы, как оформить портфолио.
Гость подкаста: Антон Кравец - руководитель арт-департамента студии Nexters.
Water Simulation
Появилась возможность рассказать о том как мы создавали жидкость для TReload. Нам всего лишь нужно было залить уровни кислотой. Кислоты должно быть много, площади затопления огромные :) Один из финальных результатов:
Что наша жизнь? Игра
Что делает в отпуске директор группы программерских компаний? То, что не может делать на работе. Программирует. Всласть. :)
Мне много лет, я выполз из тьмы и в Transport Tycoon Deluxe я играл ещё в то время, когда эта игра только появилась (это 94-й год).
HighFleet: игра про битвы небесных кораблей
7 июля 2021 года на Steam вышел давно ожидавшийся инди-проект петербуржского геймдизайнера Константина Кошутина, автора культового стимпанкового HammerFight, поддержанный возрождённой MicroProse. Похоже, предварительные оценки попали в точку.
После долгого ожидания и не раз переносившихся дат выхода он всё же вышел в релиз.
Вклад авторов
-
DuhaTheBest 472.0 -
ThisIsZolden 265.0 -
alizar 249.0 -
NikolayCherkashin 203.0 -
Holmogorov 195.0 -
qnok 185.0 -
Greenolor 179.0 -
coder1cv8 178.0 -
barrettdesign 177.0 -
MagisterLudi 171.2