Sistema de entidades baseado em componentes em scala

9

Estou pesquisando em alguma biblioteca que implementa a Estrutura do Sistema de Entidade Baseado em Componentes (ECS) usada em vários jogos e implementend em muitos mecanismos de jogo (unidade, libgdx, etc.)

Estou começando um pequeno projeto de jogo no scala ( ECS roguelike ), e neste momento Eu só encontro uma biblioteca java chamada ashley .

Você sabe se existem outras bibliotecas do ECS (no Scala) ou se a única maneira é usar ou reimplementar essa biblioteca no scala (ashley)?

Outra questão relacionada, o paradigma Ator e o Sistema de Entidade Baseado em Componentes não é tão distante, qual é a diferença?

    
por reyman64 03.09.2015 в 17:48
fonte

1 resposta

2

Em relação à questão sobre as diferenças com um sistema de Ator, o objetivo de um sistema de Ator é permitir a comunicação assíncrona entre os atores. Eu não vejo nada na ECS que esteja relacionado à assincronia. De fato, de um dos seus links:

  

Cada sistema será atualizado uma vez por quadro em uma ordem lógica

Isso implica em um progresso de bloqueio síncrono através do programa, bem diferente de um sistema de agente em que os componentes estariam enviando mensagens uns aos outros de maneira simultânea.

Em relação à sua necessidade de uma biblioteca do ECS no Scala. Scala e Java são interoperáveis, existe alguma razão pela qual você não pode simplesmente usar ashley dentro do seu código scala?

    
por mattinbits 11.09.2015 / 16:59
fonte