MeetUp факультета разработки игр GeekUniversity #2

25
мая 2019 года
Начало события в 14:00

О мероприятии

"Говорим про ECS*"

На митапе факультета разработки игр GeekUniversity обсудим с практиками, для чего и как применять архитектуру ECS (Entity Component System) и можно ли обойтись без нее. Встреча будет полезна как начинающим, так и практикующим разработчикам на Unity.

14:00 - “Введение в Data-Oriented Programming на Unity”. Валентин Симонов, Field Engineer, Unity Technologies.
Валентин расскажет о Data-Oriented Tech Stack (DOTS) и его частях: ECS, C# Job System, Burst Compiler, Unity Physics — технологиях которые позволят играм на Unity использовать все возможности современного десктопного и мобильного железа.

  • Что такое Data-Oriented Programming. 
  • Какие задачи решают DOTS и входящие в него технологии. 
  • Что можно использовать уже сегодня.
  • Какие возможности станут доступны в будущем.

15:00 - “От теории к практике. Опыт реализации DOTS в боевом проекте”. Сергей Клименко, программист, студия Moonlight Mouse.
Сергей на примере разрабатываемой Moonlight Mouse игры - Elinor, расскажет о том, как реализовывать геймплейные механики в DOTS, с чего начать переход на DOD, как организовать данные и системы в ECS и как оптимизировать время выполнения систем с помощью C# Job System.

16:00 - "ECS для начинающих разработчиков". Василий Маркевич, студент факультета разработки игр GeekUniversity, Project Manager, автор канала @ecscomrade.
Василий поделится опытом разработки на ECS и ответит на два главных вопроса начинающего разработчика:

  • Почему мне НЕ нужен ECS?
  • Почему мне НУЖЕН ECS?

Регистрация на MeetUp обязательна. Количество мест ограничено.

 

*ECS — это шаблон проектирования "Сущность Компонент Система" (Entity Component System). Шаблон обеспечивает разделение данных (компоненты) и кода, который работает с этими данными (системы). Таким образом, данные могут храниться в памяти максимально эффективно для CPU, что позволяет полностью использовать кэш процессора при итерации по этим данным.

В реализации ECS от Unity, при написании Систем, которые обрабатывают большие объемы данных, можно использовать технологию C# Job System. Эта технология позволяет писать безопасный многопоточный код и использовать все возможности современных многоядерных процессоров. Более того, при использовании C#JS и компилятора Burst, который генерирует максимально оптимизированный машинный код под целевую платформу, производительность этого кода будет в десятки раз выше.

Шаблон проектирования ECS и его конкретная реализация в Unity является фундаментом, на котором строятся все остальные технологии Data-Oriented Tech Stack (DOTS). Сама по себе парадигма Data-Oriented Programming уже не нова и активно применяется в индустрии разработки игр. Использование DOP в Unity потребует от разработчиков мыслить другими терминами и отказаться от многих привычных инструментов. С вопросом, стоит ли применять DOTS и ECS в вашем проекте, мы попробуем разобраться на митапе.

Поделиться
25
мая 2019 года
Начало события в 14:00