[k-syndicate.school] Entity component system (2024)
Описание:
Курс о том, как отточить свои инструменты для создания игр на максимум.
Он посвящен тому, чтобы не просто объяснить суть ECS-подхода, а передать действительно сеньорные навыки мышления и построения продуктов. Существует большое заблуждение о том, что ECS - это в первую очередь комплексный (и часто неудобный) способ глобальной оптимизации. Мы знаем, что это не так. Правильно использованный ECS, прежде всего - самый удобный способ реализации сложного (да и любого) геймдизайна. Он дает возможность адаптации к изменяющимся требованиям, что для геймплея любой игры является естественным и постоянным процессом. Мы видим нашей задачей передать это видение вам. Дополнительная производительность там также есть, но во вторую очередь.
Фреймворк: мы используем опенсорсный фреймворк Entitas. Мы и наши друзья пользовались и пользуются им на проектах самого разного масштаба - от match-3 до онлайн шутеров. Из всех фреймворков мы находим его самым выразительным и удобным. (Вам тоже понравится)
Существует заблуждение о том, что он не поддерживается. Это не так: последняя его версия 1.14 вышла в сентябре 2022 года, а версия 2.0 постепенно готовится к релизу. Его большими преимуществами являются приоритезация читаемости, возможность работы в C# standalone, кастомизируемая кодогенерация, мощный визуальный дебаг в эдиторе и производительность, а также популярность использования в большом продакшене.
Курс состоит из двух частей:
Первая часть посвящена майндшифту в парадигму Data-oriented подхода к проектированию. В ней мы напишем обширное и сложное демо Survivors-like игры и на практике рассмотрим весь подход, начиная от самых маленьких кирпичей (создания и организации систем и компонентов) и заканчивая полной архитектурой и инфрастуктурой для написания геймплея. Кроме самих трюков и приемов в коде, дополненной кодогенерации и деталей взаимодействия частей, мы стараемся также сакцентировать внимание на мышлении при проектировании фич.
Вторая часть расширяет это демо продакшен-подходами к организации всей структуры проекта. Мы рассмотрим, как ECS встраивается в систему управления состояниями игры, как организовать сохранение и загрузку прогресса, возможности управляемой симуляции, а также, для каких задач не стоит использовать ECS и как организовать сообщение между ECS-миром и его окружением.
После того, как вы напишете этот проект последовательно и вместе с нами, вы получите мощнейший инструмент для геймплея любого масштаба.
Разработка игр заставляет нас решать массу проблем продукта в целом. За их решением можно потерять ощущение удовольствия и радости от самого создания игр. Мы его возвращаем.
Скачать:
 📥 Скрытое содержимое! Войдите или Зарегистрируйтесь