Найти в Дзене
Записал небольшое видео, чтобы напомнить о себе, что я ничего не забросил и каждый день тружусь на благо
Видео только загрузил, на разных площадках может разное время обрабатываться, модерироваться. Ютуб https://youtu.be/2vn0W1Gzfpg Рутуб https://rutube.ru/video/5cce16e45cabc98e891f231b9473fbcc/ ВК https://vkvideo.ru/video-166367099_456239396?sh=4
1 неделю назад
Это будет гениально
Будет просто топовая система. Удобная, простая, восхитительная. У меня столько идей, которые ещё предстоит реализовать. Раньше я говорил, что у меня 4 конфига. 1 общий и дальше для юнитов, зданий и ресурсов. Теперь будет всего один конфиг для сборки всех сущностей. Теперь не нужно будет самостоятельно добавлять все фрагменты данных. Это высокий шанс на ошибку, например если добавить что-то дважды или конфликтующие фрагменты или наоборот забыть что-то добавить. Я создам готовые наборы, в которых будут настройки, данные и так далее...
1 неделю назад
Очень длинный пост
Откровение #101. Вот у меня уже год скоро, как я изучаю C++ в контексте Unreal Engine и имею определенный опыт. Вот что я выяснил - очень важна конкретика. Делать универсальную систему = делать узкое горло в плане производительности. Чем больше неопределённостей - тем хуже система. Поэтому всегда нужно знать рамки. При создании функции или системы всегда нужно понимать, что именно она делает. Конкретно принимает эти значения, конкретно делает это, конкретные такие выходные данные. Красные флаги: что хочешь, что угодно, универсально, в любом месте. И когда вот это понял, то единственной проблемой для меня стало - придумать эти рамки...
1 неделю назад
Mass Entity весьма большой плагин
Поэтому он будет отдельным от основного Фреймворка. Ну и использовать его можно так же без основного Фреймворка. Поэтому разделение весьма логично. AI тут работает через Mass Entity и что интересно, используется сторонний плагин для поиска пути. Система избеганий, укрытия и так далее через EQS. И ещё взаимодействия с объектами через Smart Object...
2 недели назад
Что вообще такое Mass Entity
Это Data - ориентированная система. Юниты, здания, ресурсы создаются не в виде Actor или Pawn, их вообще нет на игровой сцене. Они существуют лишь в локальном кеше и называются сущностям . Именно потому что этих данных нет на сцене, то они обрабатываются в многопоточном режиме. И есть ещё подсистема визуализации. Она спавнит всего один актор, который по координатам спавнит Instanced Static Mesh для оптимизированного рендеринга. То есть одинаковые объекты с точки зрения рендера будут являться 1 объектом. Меш может обрабатывать события клика по нему, поэтому всегда можете получить данные для отображения в виджете...
2 недели назад
Разобрался с Mass Entity, а тут ещё наткнулся на плагин Mass Gameplay, который является надстройкой над Mass Entity и создавался специально
для City Sample. Там новый подход к использованию, много интересных механик. Примерно 16 модулей добавляет. Есть ещё в чем разбираться, скорее всего сделаю копию этого плагина, но под RTS. Удалю все лишнее, оптимизирую для стратегий. Думаю результат будет потрясным.
2 недели назад
В общем, я не просто хочу создать стратегию с лимитом юнитов около 100, я хочу, чтобы их было число огромным и при этом все было играбельно
Поэтому я сейчас занимаюсь изучением экспериментальной системы Mass Entity. Она полностью работает на C++ и есть некоторые настройки в редакторе. Я сейчас адаптирую систему для стратегий, чтобы можно было создавать сущности не залезая в код. Сущностями являются юниты, здания и ресурсы. Система очень большая и сложная для понимания, но успехи есть...
2 недели назад
Сейчас самая активная фаза разработки плагина
Когда я создам все основные системы, то начну серию уроков по созданию RTS на базе моего фреймворка. Это будет совершенно новый уровень. И по ходу я буду поддерживать код плагина и добавлять новые фичи при необходимости. Это планы на будущее, но в условиях дефицита времени все еще может поменяться. Самое главное,...
3 недели назад
Есть множество архитектурных изменений
Изначально я планировал создать серию плагинов, которые облегчат создание игр в жанре RTS. Отдельно плагин камеры, отдельно плагин для юнитов, отдельно плагин системы строительства, плагин с крутыми инструментами, типа пакетной обработки данных, пространственное хеширование и так далее. А сейчас понял, что все они тесно связаны между собой. Например пространственное хеширование, в том виде, в котором я его вам показывал, идеально подходит для создания оптимизированного тумана войны. В общем, я буду делать единый Фреймворк для RTS, где все будет тесно связано между собой для наивысшей производительности и оптимизации...
3 недели назад
В видосе выше миникарта создана с помощью инструмента World Partition
Я его модифицировал, чтобы можно было создавать игровую карту. Способ рабочий, но так себе. Производительностью не радует. Миникарта не должна быть требовательной к ресурсам. Далее я стал делать через Render Target. Для оптимизации использовал 2 камеры, одна делала снимок ландшафта в начале игры и удалялась, сохранив изображение. Вторая отслеживала объекты. Тоже такой себе метод в плане производительности. Сейчас пробую уже третий способ - через RVT. И мне он уже нравится, так как вместо кучи математики и вычислений - все делает материал. И текстура в итоге получается одна, а не бутерброд из текстур...
1 месяц назад
Кажется, что такая тривиальная мелочь
Мини карта, передвижение с помощью кликов по ней, рамку обзора камеры на карте сделать. Но на самом деле это вообще не просто. Миникарту решил брать из world partition, но на самом деле нет инструментов, чтобы взять данные оттуда. Казалось бы, в движке есть инструмент для создания мини карты, который делает все необходимое. Но есть нюанс, эта карта исключительно для редактора, а не для игры. И как только вы запускаете игру - актор миникарты удаляется. Мне пришлось сделать инструмент, который делает дубликат этого актора, чтобы использовать данные. Можно было бы делать через render target, но мне показалось, что это слишком ресурсоемкая задача...
1 месяц назад
Я вернулся домой и вскоре продолжу работу над своим плагином
Сейчас в нем реализована камера. Хочу туда же добавить ещё миникарту и туман войны. Этот плагин должен стать ядром для игр жанра RTS, симуляторов или других TopDown проектов, который обеспечивает самый базовый функционал. Камера, миникарта, туман войны, игровое меню, система сохранений и пост обработка. Пока сделан только первый шаг. Основа всех систем будет написана на C++, а настройки и построение логики на blueprints. Ещё я обещал записать ролик на тему как подружиться с Visual studio, потому что у многих она вызывает боль...
1 месяц назад