Я не досвідчений з питань розвитку ігор, але як програміст. Мовою Scala, ви можете мати масштабну багатозадачність з "Акторами", дуже стабільну, як я чую. Ви навіть можете без проблем працювати сотні тисяч.
Тому я подумав, можливо, ви можете використовувати їх як базовий клас для 2D-Sprites, щоб вийти з ігрового циклу, який вимагає пройти всі спрайти та перемістити їх. В основному вони рухаються самі, керовані подіями.
Чи має це сенс для гри? Маючи це багатозадачно? Зрештою, він працюватиме на JVM, хоча це не повинно бути великою проблемою в наш час.
Редагувати:
Помирившись на деякий час, я помітив, що існує лише одна реальна перевага цієї ідеї: підтримка багатоядерних. Простий цикл гри буде працювати лише на одному ядрі і працюватиме все послідовно.
Оскільки в сучасних комп’ютерах, навіть вдома, сьогодні є вбудовані два або більше ядер, я думаю, що це гарна ідея, щоб програмісти ігор могли ефективно використовувати інші ядра. Зрештою, я думаю, що зазвичай у гравця буде лише гра, яка працює на його восьмиядерній машині, так чому б і ні.
Інша перевага, яку я бачу, полягає в тому, що у Scala ви можете мати RemoteActors
, до якого можна поводитись так само, але працювати на іншому комп’ютері. Тож, можливо, це може також спростити мережеві ігри.
Я маю намір вкласти це в свій двигун Scala 2D, як тільки можу.