Использование паттерна ECS на стороне сервера
Есть клиент-серверная игра, где бизнес логика на сервере. Много читал про шаблон entity-component-system, но так до конца и не понял, его используют только на клиенте "игровом движке" или в том числе и на сервере "бэкенде" игры? Стоит ли его на сервере использовать, а потом условно сериализовать сущности в JSON и отправлять клиентам, которые будут синхронизировать сущности.
Ответы (1 шт):
ECS это всего лишь способ организации сложного кода с большим количеством акторов и систем (по сути "паттерн проектирования"). Удобный для разработки игр. Если мне не изменяет память, то неплохо паралеллится. Если у вас на бэке код подобного плана - ECS вполне подойдет. И на важно, игровой это сервер или что-то еще.
Сложные "толстые" и "авторитарные" сервера в играх реже используются просто от того, что зачастую можно обойтись и без них, тем более, когда ты инди или небольшая студия. Да и так, не столь большому числу игр требуется одновременно и "авторитетный" и "толстый" сервер сразу. Из тех которым требуются - MMORPG навскидку.