Foxoed

Foxoed

Разраб на Unreal Engine 5. Пилю экшен адвенчуру от 3 лица Island of Ash. Есть в стиме.
Пикабушник
Дата рождения: 19 июня
в топе авторов на 561 месте
107 рейтинг 0 подписчиков 0 подписок 2 поста 0 в горячем
7

История о том как я в соло тяну свою экшен-рпг, вдохновляясь Готикой

Где-то полгода назад я анонсировал свой проект Island of Ash. За это время время я уже успел провести плейтест игры, дать поиграть паре десятков стримеров, немного поседеть, допилить и перепилить все по 100 раз. В этой статье хочу рассказать про курьёзы, что возникали на этом пути, и обозначить, что будет дальше.

Занесло же меня на игропром этот...

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

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

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

Когда решил позагорать на Эвересте

Когда решил позагорать на Эвересте

После таких курьез я понял, что надо мыслить более глобально, как игрок, который в первый раз играет в игру, но я так мыслить не умею. Че делать? Плейтест делать. Так и родилась идея о том, чтобы в мае провести первый плейтест игры человек так на 300. И провел...Кстати, на игропроме получил такие оценки, и это меня конечно замотивировало:

  • Лучший соло разработчик: 3 место 🥉

  • Выбор участников: 8 место

  • Лучший дебют: 9 место

  • Выбор игроков: 9 место

  • Самая ожидаемая игра: 13 место

  • Выбор стримеров: 13 место

  • Лучшая 3д графика: 16 место

  • Лучшая игра на ПК: 18 место

  • Лучший звук: 21 место

Как плейтест проводил

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

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

Спустя несколько часов начали поступать первые отзывы в форму обратной связи. И они были...положительными, почти все. Выдохнул. Что критиковали? Ну в основном это касалось UI (ну я ваще не дизайнер), лагов при загрузке уровней (ну тут да косяк был), анимаций (терпеть их не могу, но хейта по ним мало было), графония (я в оптимизацию перетопил). Ну зато фпс у всех был высокий, даже на стим деке)))

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

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

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

На данный момент проект движется ко второй итерации плейтеста до конца лета и я буду рад пригласить туда читателей. На плейтесте там вся первая локация будет, с квестами, врагами и тд, а это часа 2 геймплея. К моменту запуска плейтеста я планирую обновить трейлер и скриншоты на странице, так как там еще старый визуал. А после этого мне останется лишь выложить демку и допиливать проект до своего финала к релизу в 2027. Ну еще где-то 5 тыщ часов работы ))

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

Стим страница игры - https://store.steampowered.com/app/4270740/Island_Of_Ash/
Группа в телеге - https://t.me/islandofAsh
Группа в вк - https://vk.ru/island_of_ash

Показать полностью 3
2

Почему игры лагают? Это глобальный сговор? Или лень разрабов?

Полтора года назад я начал делать игры на анриле пятом и подробней погрузился в этот вопрос. Теперь попробую рассказать почему многие игры лагают простым языком.

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

Как строится кадр на видеокарте

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

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

Потом видеокарта проводит проверку глубины, что-то вроде этот пиксель виден или его перекрывает другой объект?. Невидимые пиксели отбрасываются. Если объектов много друг перед другом, нагрузка также растет.

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

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

Дальше идет постобработка, в народе называют Postprocess. Это размытие движения, цветокор, сглаживание, фулл скрин эффекты. Если вы рендерите в 4к, это ад и миллионы пикселей.

Почему лагает из-за видеокарты?

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

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

А еще вся эта движуха взаимодействует друг с другом. Например, в игре используются виртуальные тени, но разраб забыл убрать их с мелкой травы перед игроком. Это значит, что они постоянно будут отрисовываться, и это ад. Потому что трава обычно в маске, там куча перекрытий. Значит Shadows Pass будет обрабатываться дольше, расчетов больше, нагрузка выше. И так в любом их Pass-ов.

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

Что делает процессор

Процессор обрабатывает игрока (нажатия клавиш и тп), двигает весь мир - позиции объектов, анимации, скрипты, ии. Если в сцене у вас например 5 объектов, это легко. А если 500, то уже тяжело. Это база.

Также проц считает физику - падения, столкновения, разрушения и тому подобные штуки. Чем больше физики, тем процессору тяжелее.

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

Также, что очень важно, процессор готовит кадр для видеокарты. Он решает какие объекты видны, сортирует их, создает драв колы и отправлет команды на видеокарту. И тут очень важная мысль. Если процессор не успевает - видеокарта просто ждёт в очереди.

Почему может лагать из-за процессора

Тут важно понять, что видяха считает пиксели, а проц - логику. Если проц не успел подготовить кадр, видеокарте считать нечего, а если видеокарта ничего не посчитала, кадр не выводится и начинаются лаги.

Если разраб кинул кучу npc на карту, и при этом они у него одновременно (даже не в зоне видимости камеры игрока) ходят, прыгают, чето делают, то это ад. Анимации зашкаливают, команды для ии тоже. Поэтому важно оптимизировать этот момент, и тогда с камнем проблем не будет.

Разраб еще может нафигачить разрушаемости, но например вместо 50 частей бочки (которая рушится) сделать 500. Игрок сразу рушит 10 бочек, в итоге у него вместо 50 деталей - 5000. И все это просчитывается и получается пиковая нагрузка. А если еще и в одном кадре, то жопа.

Вывод

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

Чем больше объектов, света, прозрачности и деталей - тем тяжелее нагрузка. Если CPU или GPU перегружены, кадры считаются медленно, и игра тормозит. Оптимизация нужна одновременно для логики и графики, иначе даже мощная видеокарта не спасёт от лагов. И да. Виноваты разрабы.

Моя игра Island of Ash, стараюсь думать об оптимизации)))

Моя игра Island of Ash, стараюсь думать об оптимизации)))

Страница игры в Steam: Island of Ash

Показать полностью 3
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества