приложение с бизнесом реализовать на ней. Кто-то извращался так? Там как раз идея в композиции всего.
ECS базируется на идее локальности данных, во всяком случае складывается такое впечатление. Я не шарю так что... мол специфика игр - много вычислений которые должны быть максимально эффективны. Что б там кэш мисов было мало и вот это все. Это налагает немного ограничений на то как где данные хранить и все такое. Что бы там всякие векторизации работали и вот эти все
Я вот просто так прикидывал, какой должна быть архитектура инструмента, который позволяет без кода описывать бизнес логику и вот в голову приходит гибкость этой архитектуры т.к. entity это может быть эктор, который наделяешь component'ами - какие-то свойства из предметной области. И с помощью system оно себе как-то все вычисляется. В общем, так сложно прикинуть все в голове, нужно пробовать какой-то прототип делать. Я немного работал в gamedev и в целом с этой архитектурой разбирался. На сколько я помню, то идея как раз в гибкости. Что мы можем взять любой объект, буть то персонаж, или какой-то бокс, дать ему компонент health и вот он уже наделён всем, что имеет хп, может получать урон, умирать и все, что даёт это свойство по логике игры.
миксины. а то что ты описываешь "описывать логику без кода" - можешь погуглить чего на тему BPM и в целом решения вроде temporal с их там workflow компонентами, можно свой DSL поверх
Интересно. Посмотрю, спасибо.
Обсуждают сегодня