Сообщество - Лига Разработчиков Видеоигр

Лига Разработчиков Видеоигр

7 388 постов 22 485 подписчиков

Популярные теги в сообществе:

Как работает ИИ врагов в Храме Зеленой Луны на примере локации Подземелье

Мы уже уточняли, что в отличие от доступной в данный момент в Steam демоверсии Храма Зеленой Луны, основная игра будет более хардкорной.

Расскажем вам на примере локации Подземелье (её нет в демо), с какими сложностями могут столкнуться игроки.

Как работает ИИ врагов в Храме Зеленой Луны на примере локации Подземелье Хоррор игра, Инди, Инди игра, Gamedev, Видео, Видео ВК, Длиннопост

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

Как работает ИИ врагов в Храме Зеленой Луны на примере локации Подземелье Хоррор игра, Инди, Инди игра, Gamedev, Видео, Видео ВК, Длиннопост

ИИ призрака позволяет ему

  • запоминать, куда вы убежали,

  • реагировать на звуки, которые вы издаете: в основном это стук шагов при беге, а также звон цепей, которые вы можете задеть при исследовании подземелья,

  • а также он может заметить луч вашего фонаря, если вы спрятались в укромном месте.

Как работает ИИ врагов в Храме Зеленой Луны на примере локации Подземелье Хоррор игра, Инди, Инди игра, Gamedev, Видео, Видео ВК, Длиннопост

Для прохождения через подземелье у игроков есть два пути:

  • стелс

  • и активное прохождение.

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

Как работает ИИ врагов в Храме Зеленой Луны на примере локации Подземелье Хоррор игра, Инди, Инди игра, Gamedev, Видео, Видео ВК, Длиннопост

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

Как работает ИИ врагов в Храме Зеленой Луны на примере локации Подземелье Хоррор игра, Инди, Инди игра, Gamedev, Видео, Видео ВК, Длиннопост

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

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

Так что, какой бы способ прохождения вы не выбрали - он не будет легким.

Подробнее и наглядно, как работает ИИ врагов в игре смотрите в видео фрагмента нашего стрима:

Добавляйте игру Храм Зеленой Луны в желаемое, чтобы не пропустить релиз в Steam и VK Play!

Показать полностью 4 1

Cканирование Zenless Zone Zero в point cloud

Cканирование Zenless Zone Zero в point cloud Gamedev, Unity, Игры, YouTube, Glitchart, Zenless Zone Zero, Видео, Длиннопост

Проверка возможностей [PointScanner].Использованы 5 скринов с глубиной из игры. Из них генерируется облако точек.Если бы был мод на свободную камеру и использовать больше скринов, то можно скопировать достаточно точно с нужной детализацией.

Бонус:

Cканирование Zenless Zone Zero в point cloud Gamedev, Unity, Игры, YouTube, Glitchart, Zenless Zone Zero, Видео, Длиннопост
Показать полностью 1 1

$675 – Итоги ноября на HypeHype

$675 – Итоги ноября на HypeHype Разработка, Gamedev, Hypehype, Roblox

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

Основные причины:

  • Платформа переводит фокус с оплаты за плейтайм на внутренние покупки (инапы – IAPs). Про инапы я делал несколько постов. Поэтому доход с плейтайма просел. Пришлось оперативно перестраиваться на инапную монетизацию. Получилось заместить падение оплаты за плейтайм инапной выручкой.

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

Точки роста в декабре:

  • Поставленные рельсы инапной монетизации. И дальнейшие улучшения.

  • Новые игры из портфолио, которые выйдут на монетизацию. На подходе примерно три игры.

  • Игры, созданные в команде.

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

А вы уже пополнили Steam?

Комиссия 5% на пополнение Steam до 4 декабря. Да-да, это настоящая игровая распродажа от GGSel х Пикабу. Пополняйте кошелек, покупайте игры и радуйтесь скидкам, пока акция не закончилась. Время пошло!

Реклама ИП «Суханов Д. Ф.», ИНН: 290132412356

Российские геймдев-форумы

Российские геймдев-форумы Компьютерные игры, Форум, Русский игропром, Длиннопост

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

Что в таком случае делать? Например, можно обратиться в уже существующие издательства и команды. Там вам сразу дадут пинка под зад с вашими идеями предоставят стабильную зарплату и офис, дружный коллектив и возможность покранчить за деньги. И всё бы хорошо, но есть два препятствия: обычно в подобные команды, да на интересный проект берут уже состоявшихся профессионалов. Кроме того, в больших компаниях творчество может быть сильно ограничено. И это объяснимо — если тебе платят деньги, то и требуют.

А если силёнок пока не хватает или жажда творчества сильнее денег? Тогда прямая дорога в инди-сектор, в компанию таких же энтузиастов. Найти их можно как и в телеграмме, и в vk, но подобные площадки не сильно-то удобы для обмена опытом. Поэтому — отправляемся на ру-форумы, посвящённые разработке игр. Там можно найти и таких же бездарей-бездельников увлечённых тиммейтов, и получить совет устроиться лучше грузчиком в «Пятёрочку» испросить совета по программированию или геймдизайну у более знающих товарищей.

Какие есть?

Разных сайтов, форумов и прочих ресурсов в ру-секторе, несмотря ни на что, всё ещё много. Хотя российская игровая индустрия после LadaRacingClub сильно просела и способна выдавать знаковые проекты лишь в единичных количествах, она до сих пор жива. Как живы и форумы, которые, несмотря ни на какие новые способы общения, так и остаются непревзойдённым средством для серьёзных неспешных коммуникаций.

1. GameDev.ru

Российские геймдев-форумы Компьютерные игры, Форум, Русский игропром, Длиннопост

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

2. Gcup.ru

Российские геймдев-форумы Компьютерные игры, Форум, Русский игропром, Длиннопост

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

А вот собрать команду вряд ли получится — соответствующий раздел на форуме практически мёртв.

3. cyberforum.ru/game-dev/

Российские геймдев-форумы Компьютерные игры, Форум, Русский игропром, Длиннопост

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

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

Проблемы

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

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

  • Поддерживают их энтузиасты, что, с одной стороны хорошо — не повторится куча историй, когда приходила крупная компания и убивала работающий продукт (все помнят историю с AG.ru?). С другой — если завтра энтузиастам надоест, всё, что нажито за эти годы, будет утеряно. Учитывая, что форумов всего-ничего, есть реальный шанс лишиться подобных инструментов.

А что по другим ресурсам?

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

А вот со специализированными площадками, посвящёнными чему-то конкретному (движку, например), всё неплохо. Они есть, на них кипит жизнь.

Да и пусть закрывают, в чём проблемы?

Российские геймдев-форумы Компьютерные игры, Форум, Русский игропром, Длиннопост

Кто-то скажет: а действительно, ну закроют, чего убиваться? Вон, куча курсов есть.

Если отставить в сторону ностальгически нотки, то ничего хорошего не случится. Российский геймдев и так чувствует себя не слишком хорошо за редким исключением, хотя талантами земля наша очень даже богата. Закрытие таких вот площадок, пусть даже там собираются в основном инди, ещё больше усложнит жизнь разработчикам. Со всех сторон раздаются стоны о нехватке специалистов и отсутствии свежих идей. И вот такие вот места — это инкубатор спецов и идей. Большая часть отсеется, но кто-то справится и вольётся в индустрию. Которая в новом времени и так уже практически не способна производить что-то выше АА и чуть менее, чем полностью уходит в инди-сферу.

С другой стороны, в 2024 году в стиме уже вышло 17510 игр, так что индустрия вполне может прожить и без очередных «Корсаров» (а вот игроки нет).

P.S. Ещё у меня есть бессмысленный и беспощадный ТГ-канал (ну а как без него?): https://t.me/gameprodev

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

RelictEngine: анриляшная наркомания и основной цикл

Основной цикл движка на данный момент выглядит так:

Пользователь создает класс от класса Relict::Application в котором необходимо разместить базовую (не игровую) логику работы приложения. Для этого ему доступны евенты PreInit, Init, PostInit, Tick, PreShutdown и Shutdown.

RelictEngine: анриляшная наркомания и основной цикл Разработка, Gamedev, Инди, Игровой движок, Длиннопост

Простое приложение, которое самоуничтожается после 3х секунд после запуска (читайте как Hello World)

В main функции приложения (в последствие это все уедет в темплейт и/или макрос) необходимо создать Шаред экземпляр нашего класса Application, Вызвать функцию создания экземпляра движка (т.к. при создании объекта Application сделать это нельзя из-за того, что std::enable_shared_from_this еще не инициализирована, а она нужна для Engine) запустить его инициализацию и основной цикл. И не забыть вернуть из функции main код выхода приложения, который вернет метод Shutdown.

RelictEngine: анриляшная наркомания и основной цикл Разработка, Gamedev, Инди, Игровой движок, Длиннопост

Пока так, потом main будет заменено на нормальный вариант в зависимости от платформы (main и WinMain), а вся вот эта писанина улетит в макрос инициализации

Как можно заметить, здесь используются SharedPtr. Пока-что это просто залипуха над shared_ptr std библиотеки (и unique_ptr соответственно). Сделано для того, чтобы не пришлось переписывать половину кода, в случае, если мне придется делать свои указатели (или использовать из какой-нибудь более другой нежели std библиотеки)

Это что касалось основного базового цикла. Теперь о том, что я имел ввиду под анриляшной наркоманией.

Во первых. Все классы движка должны быть отнаследованы от некоей базовой сущности. В случае Анрила это UBaseObject, в моем - Object. Сделано это для того, чтобы все объекты в дереве вызовов знали друг о друге (сборщика мусора не предусмотрено). И чтобы всегда можно было обратится к объекту, породившему текущий объект через метод GetOwner. Правда это накладывает дополнительные ограничения на констурктор, которые в Unreal это решается все generated заголовочниками. Ну а я пока-что пошел наркоманским путем.

RelictEngine: анриляшная наркомания и основной цикл Разработка, Gamedev, Инди, Игровой движок, Длиннопост

Сразу попытался решить проблему, в случае, если объекту нужны дополнительные параметры в конструктор.

Пока не знаю, угадал ли я с решением, или это придется переписать на что-то более вменяемое. Как минимум точно нужно будет подумать над сценарием, когда нужен дополнительный конструктор объекта без параметров (дефолтный конструктор). Может сложится ситуация, когда такой объект будет создан не через макрос NewObject, а через обычный new или make_shared - тогда будут проблемы, ибо Owner не будет инициализирован.

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

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

Раздача пака музыки для экшн игр в разных жанрах Hybrid Action Music Pack Vol.3 на asset store Unity

Раздача пака музыки для экшн игр в разных жанрах Hybrid Action Music Pack Vol.3 на asset store Unity Asset store, Asset, Unity, Unity3D, Инди игра, Gamedev, Раздача, Разработка, Инди, Длиннопост, Музыка, Аудио, Экшн

Hybrid Action Music Pack Vol.3

Раздается набора треков для экшн игр стоимостью 200$ до 5.12.24 !!

ЗАБРАТЬ

Промо код : EPIKTONMUSIC

Совместимость конвейера рендеринга

Встроенный конвейер рендеринга — это конвейер рендеринга Unity по умолчанию. Это конвейер рендеринга общего назначения с ограниченными возможностями настройки. Универсальный конвейер рендеринга (URP) — это скриптуемый конвейер рендеринга, который можно быстро и легко настроить, и который позволяет создавать оптимизированную графику на широком спектре платформ. Конвейер рендеринга высокой четкости (HDRP) — это скриптуемый конвейер рендеринга, который позволяет создавать передовую высококачественную графику на высокопроизводительных платформах.

Версия Unity 2021.3.4f1

Встроенный Совместимый

URP Совместимый

HDRP Совместимый

Описание

Представляем Hybrid Action Music Pack Vol.3 — поднимите свои проекты на новый уровень с помощью непревзойденных саундтреков!

Устали от стандартных музыкальных треков, которые не производят неизгладимого впечатления? Приготовьтесь к революции в кинематографической музыке с нашим Hybrid Action Music Pack Vol.3, который теперь доступен в магазине ресурсов Unity. Погрузитесь в необычные звуковые ландшафты, которые выделят ваши проекты.

Откройте для себя суть оригинальности в нашем Hybrid Action Music Pack Vol.3. Созданные визионерским композитором Epikton, эти треки бросают вызов условностям и воплощают уровень уникальности, который оставляет неизгладимый след у вашей аудитории.

Вот почему Hybrid Action Music Pack от Epikton является обязательным для создателей, стремящихся поднять свои проекты на новый уровень:

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

  • Изысканное мастерство: подобно шеф-повару, создающему изысканное блюдо, музыка Epikton радует чувства тонким балансом эмоций и интенсивности. Испытайте захватывающие мелодии, пульсирующие ритмы и потусторонние тона, которые выведут ваши проекты на новые высоты.

  • Выделитесь из толпы: на насыщенном рынке выделение имеет решающее значение. Hybrid Action Music Pack Vol.3 дает вам уникальную звуковую индивидуальность, которая пленит вашу аудиторию и оставит неизгладимое впечатление. Пусть ваши творения ярко сияют среди конкурентов.

  • Экспертиза: преданность Epikton совершенству гарантирует, что каждый трек в этом пакете будет студийного профессионального качества. Тщательное производство, сведение и мастеринг гарантируют первозданный звук, который соответствует самым высоким стандартам отрасли.

  • Бесшовная интеграция: наши треки разработаны для бесшовной интеграции с Unity, что позволяет легко внедрять их в ваши проекты.

Мы здесь, чтобы поддерживать вас на каждом этапе пути! Как художник, стоящий за музыкальным пакетом, я лично гарантирую вам постоянную поддержку через нашу функцию живого чата на моем официальном сайте. Есть вопросы или проблемы? Свяжитесь со мной напрямую, и я окажу быструю и персонализированную помощь. Кроме того, после покупки просто отправьте мне ссылку на ваш канал YouTube, и я быстро внесу его в белый список для беспроблемного процесса подачи заявления об авторских правах. Давайте сделаем ваше творческое путешествие необыкновенным с нашим музыкальным пакетом!

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

Треклист:

  • Epikton - Acceleration Zone

  • Epikton - Artery Of Steel

  • Epikton - Chaos Timer

  • Epikton - Chrono Crisis

  • Epikton - Collapsed Control

  • Epikton - Digital Transcendence

  • Epikton - Drums of the Machines

  • Epikton - Mechanized Monolith

  • Epikton - Rampage Warning

  • Epikton - Thunderous Drums

Знаете ли вы, что этот пакет также включен в наш Ultimate Cinematic Music Bundle, который включает все треки Epikton по более выгодной цене?

ЗАБРАТЬ

Промо код : EPIKTONMUSIC

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

Я сделяль! Доделали катсцену для игры. От концепта к ролику. Фиг угадаете, в какую сумму мне это обошлось)

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

Relict Engine: Базовая архитектура и система сборки

Базовая архитектура

Начнем с основного. Каким образом организовать движок так, чтобы это было и функционально и удобно.
Понятно, что при программировании приложения (игра это конечно тоже приложение, но пока-что мы под приложением будет понимать нечто более простое и базовое) разработчику не желательно напрямую давать доступ к движку. Т.к. это ему не нужно, т.к. больше шансов выстрелить себе в ногу и т.к. это добавляет некому не нужное (как разработчику приложения так и разработчику движка) переусложнение проекта, увеличивает энтропию Вселенной и увеличивает вероятность Unknown Behavior (или неопределенного поведения). Иными словами разработчик движка должен убедится, что разработчик приложения всегда будет вызывать сначала А, а потом Б и никак не наоборот. Так-же, нам нужно убедится, что под все доступные движку платформы код приложения будет одинаковым. Поэтому необходимость сделать некий абстрактный уровень, или, в нашем случае GameFramework. Этот фреймворк будет запрашивать все необходимые функции и потоки движка в нужной нам последовательности. А разработчику приложения будет достаточно вызвать лишь пару методов. В GameFramework разработчик сможет управлять сценами, загрузкой и созданием объектов и управлять игровой логикой (собственно по этому и GameFramework). При необходимости, к ряду классов ядра движка (модуль Core) можно получить доступ через вызовы GameFramework, однако, разработка приложения должна в 99.9% случаев обходится без них. Зафиксировали.

Вторым по значимости является отдельный модуль, который по совместимости является точкой входа в приложение. И это модуль, Engine. Он состоит из одного единственного класса Engine (+ управляющие структуры, конечно). Именно его запуск в функции main приложения запускает все нужные подсистемы, инициализирует мир, а так-же запускает основной цикл приложения.

Третьим модулем, который так-же, как и GameFramework является уровнем абстракции, является модуль Core. В нем мы должны создать все базовые и служебные классы нашего движка. Там хранятся классы обработчики текстур, моделей, систем частиц, итд. Эти классы будут использоваться движком для работы с функциональными внешними библиотеками (например SDL) и будет обеспечивать универсальность данных, в не зависимости от выбранной разработчиком приложения платформы.

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

Relict Engine: Базовая архитектура и система сборки Разработка, Gamedev, Инди, Игровой движок

Все реликты являются отдельными проектами типа Object Library


Система сборки

Так-же, как и в случае с GameFramework нам нужна некая абстракция от платформы. Сценарий сборки должен быть одинаковым на любой из доступных платформ. В данном конкретном случае CMake показывает себя лучше всего. Он обладает хорошим, и даже в каких-то случаях избыточным функционалом. Умеет генерировать конфигурационные файлы и заголовки по шаблонам, итд, а самое главное, он поддерживается всеми основными операционными системами и архитектурами. Конечно, будет необходимо написать для него некий функциональный модуль, чтобы разработчику приложения не пришлось думать о том, как подключать те или иные библиотеки, в каких директориях искать библиотеки и исходные коды, но в остальном CMake справится сам.

Relict Engine: Базовая архитектура и система сборки Разработка, Gamedev, Инди, Игровой движок

Оглашение реликта с помощью самописных функций CMake


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

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