Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Генератор подземелий на основе узлов графа

Время на прочтение11 мин
Количество просмотров28K
image

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

Введение


Алгоритм был написан как часть работы на получение степени бакалавра и основан на статье Ma et al (2014). Целью работы было ускорение алгоритма и дополнение его новыми функциями. Я вполне доволен результатом, потому что мы сделали алгоритм достаточно быстрым, чтобы использовать его во время выполнения игры. После завершения бакалаврской работы мы решили превратить её в статью и отправить на конференцию Game-ON 2018.

Алгоритм


Для создания уровня игры алгоритм получает в качестве входных данных набор полигональных строительных блоков и граф связности уровня (топологию уровня). Узлы графа обозначают комнаты, а рёбра определяют связи между ними. Цель алгоритма — назначить каждому узлу графа форму и расположение комнаты таким образом, чтобы никакие две формы комнат не пересекались, и каждая пара соседних комнат могла соединяться дверьми.
Всего голосов 51: ↑51 и ↓0+51
Комментарии11

Что почитать программисту на досуге

Время на прочтение3 мин
Количество просмотров34K

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

Читать дальше →
Всего голосов 35: ↑32 и ↓3+29
Комментарии24

Как «правильно» выходить в Ранний Доступ на Steam

Время на прочтение8 мин
Количество просмотров18K
В виду подходящего весеннего сезона и многих запланированных релизов в это время, сейчас лучший момент прочесть перевод статьи геймдизайнера Matthew Donatelli и вынести несколько полезных уроков до того как вы выйдете в Ранний Доступ. Это самый трезвый взгляд на Early Access, который я когда-либо читал.


Читать перевод
Всего голосов 24: ↑24 и ↓0+24
Комментарии31

Асинхронная (и не очень) загрузка данных в Unreal Engine 4

Время на прочтение8 мин
Количество просмотров26K


Содержание:



Всем привет!

Сегодня я расскажу о том, как обращаться с ассетами на Unreal Engine 4 так, чтобы не было мучительно больно за бесцельно занятую память и стоны игроков за время загрузки вашей игры.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии9

Динамическое обнаружение в игре Shadow Tactics

Время на прочтение12 мин
Количество просмотров12K

Что: динамическое обнаружение в Shadow Tactics


В Shadow Tactics игроки управляют отрядом персонажей, каждый из которых имеет свою специализацию (в отряде может быть до пяти персонажей). Их задача — прокрасться по огромному уровню, заполненному врагами, и незаметно убить жертву. Каждый уровень — это головоломка со множеством решений. Один из самых важных инструментов игрока — способность отображать область видимости врага в форме конусов, которые мы называем конусами видимости (Viewcones). У конусов видимости есть области разного цвета, определяющие поведение врагов.

image
Рисунок 1: конус видимости Shadow Tactics.

Для тех, кому интересно, как это реализовано технически, я процитирую нашего ведущего технического инженера Фридера Мильке (Frieder Mielke), человека, создавшего всю систему: «Основной принцип, используемый в вычислениях конусов видимости — это использование карт теней. Сначала мы рендерим текстуру глубины из положения глаз выбранного персонажа. Затем при рендеринге основной камеры мы на основании ранее созданной текстуры глубин генерируем маску, содержащую информацию для разных областей видимости (например, „полная видимость“, „полностью скрытая“, „невидимая, когда персонаж ползёт“ и „за пределами видимости“). С помощью этой маски в последнем проходе мы можем раскрасить конус видимости. В этом проходе используется буфер шаблонов (stencil buffer) для исключения объектов, которые не нужно рендерить, и добавления информации об источниках освещения».

С точки зрения дизайна мы проанализировали, как эти конусы использовались в старых играх, и увидели способ их улучшения. Это привело нас к пересмотру некоторых аспектов обнаружения персонажей в этом жанра.
Читать дальше →
Всего голосов 30: ↑28 и ↓2+26
Комментарии19

Разбор графики Supreme Commander

Время на прочтение9 мин
Количество просмотров27K

Total Annihilation занимает в моём сердце особое место, потому что это была моя первая RTS; вместе с Command & Conquer и Starcraft это одна из самых лучших RTS, выпущенных во второй половине 90-х.

Через десять лет, в 2007 году, был выпущена её наследница: Supreme Commander. Благодаря тому, что над игрой работали одни из основных создателей Total Annihilation (дизайнер Крис Тейлор, программист движка Джонатан Мейвор и композитор Джереми Соул), ожидания фанатов были очень высокими.

Supreme Commander была тепло принята критиками и игроками благодаря своим интересным особенностям, таким как «стратегический зум» и физически реалистичная баллистика.

Давайте посмотрим, как движок SupCom под названием Moho рендерит кадр игры. RenderDoc не поддерживает игры под DirectX 9, поэтому реверс-инжиниринг выполнялся при помощи старого доброго PIX.
Читать дальше →
Всего голосов 73: ↑73 и ↓0+73
Комментарии14

Анализ исходного кода Duke Nukem 3D: Часть 1

Время на прочтение19 мин
Количество просмотров43K
image

Уйдя с работы в Amazon, я провёл много времени за чтением отличного исходного кода.

Разобравшись с невероятно замечательным кодом idSoftware, я принялся за одну из лучших игр всех времён: Duke Nukem 3D и за её движок под названием "Build".

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

Как обычно, я переработал свои заметки в статью. Надеюсь, она вдохновит вас на чтение исходного кода и совершенствование своих навыков.
Всего голосов 101: ↑98 и ↓3+95
Комментарии31

59 способов монетизировать вашу инди-игру

Время на прочтение14 мин
Количество просмотров42K

У вас нет ни гроша? Питаетесь Дошираком? Отчаянно пытаетесь заработать пару баксов своим инди-детищем? Все мы были в точке невозврата в разработке, когда хотели получить какой-нибудь доход от игр, но не знали в какую сторону двигаться. На самом деле, иногда мы даже не представляли всех возможностей…
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии31

Зарабатывая на жизнь созданием игр

Время на прочтение7 мин
Количество просмотров24K
larian_logo
Привет, Хабр!

Меня зовут Артём Титов, я lead gameplay programmer в Larian Studios.
Мы очень давно хотели поделиться с вами нашим опытом создания и разработки компьютерных игр, но долго не могли решить, с чего бы начать. Долго размышляя, мы пришли к выводу, что первая статья должна быть не технической, а скорее личной — и для этого я перевёл вам запись в блоге одного из наших сотрудников, сделанную около года назад. Его история даёт очень хорошее представление не только о нашей студии со стороны игр, что мы создаём, но и детально показывает личный аспект жизни рядового сотрудника студии, проходящей через падения и взлёты. Я постарался сделать наиболее точный перевод, но тем не менее полностью от англицизмов и слэнга избавиться не смог.

Итак под катом история моего коллеги длиной в 10 лет.
Читать дальше →
Всего голосов 42: ↑38 и ↓4+34
Комментарии22

Что если в играх использовать видеокарточку для физики, а не для графики

Время на прочтение5 мин
Количество просмотров79K
Хочу рассказать сообществу о проведённом мной эксперименте.

Мне всегда нравились игры, в которых есть физика. То есть, некоторые процессы не управляются скриптами, а эволюционируют во времени, следуя физическим законам. Из этого проистекают сложность и непредсказуемость игрового процесса.

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

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

Или ещё замечательный пример — Kerbal Space Program. Там физика уже является непосредственым источником геймплея.

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

Я давно мечтал сделать именно такой, до предела физически реалистичный римейк Scorched Earth. Но все мои эксперименты с моделированием физических систем упирались в неумолимо медленные процессоры. Тысяча-две частиц были пределом для real-time симуляции.

Но недавнее моё «открытие» изменило ситуацию.
Всего голосов 157: ↑146 и ↓11+135
Комментарии217

Фоны старых квестов — методы разработки, секреты, советы

Время на прочтение12 мин
Количество просмотров43K


Сегодня мы исследуем вопрос разработки фонов «как в старых адвенчурах». Это не совсем то, чего вы от меня ожидали. Однако, очередная часть «Галопа Пикселя» задерживается по двум серьезным причинам. Во-первых, главы посвященные анимации требуют — качественной анимации, иначе они не смогут претендовать на лавры материала обучающего. Во-вторых, «галопу» необходима ещё одна публикация до начала цикла об анимации, который уже находится в разработке. Связано это с тем, что я занимаюсь не только классическим пиксель-артом, но и тем, что выходит за пределы канонических разрешений, и у меня, определенно, есть чем поделиться. К сожалению, такой тип пиксель-арта сейчас более моден, чем классика, если судить по откликам публики.

Давайте, впрочем, вернемся к теме сегодняшней публикации. Считаю это маленьким открытием, и мне непременно нужно поделиться им с теми, кто собирается соединить некоторый отрезок своей жизни с тем, что может называться классической адвенчурой. Быть может это поможет вернуть на рынок игры, которые немного оттеснят «хипстерский пиксель» заменив его на то, что может напомнить времена лучших игр от «Westwood Studios», «Sierra» и «Lucas Arts». Предположу вскользь, что множество художников и так знают это. И, тем не менее — я не заметил публикаций на эту тему. Наша братия не спешит делиться своими секретами, сохраняя некую монополию на собственные открытия.

Я хотел приурочить эту статью к началу разработки собственной адвенчуры. Но кто знает, когда это произойдет? А вам эта информация может помочь уже сейчас. Стоит ли откладывать? Думаю, что нет. Лопаты в руки.


Продолжить копать
Всего голосов 107: ↑103 и ↓4+99
Комментарии59

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность