News for hackers. Stuff that matters.
Re:Why it is time to start thinking of games as databases by kitd on Wednesday June 07, 2023 @12:19PM (#36228924)
One of the reasons for using an ECS is cache coherence. All your game state is lumped together in one chunk or memory. Lookup times are near instant as a result.

Moving to SQLite makes theoretical sense, but you lose the benefit of cache coherence as a result.

Though you probably do gain other benefits.

Re:Why it is time to start thinking of games as databases by claytongulick on Wednesday June 07, 2023 @12:27PM (#36229112)
I'm not familiar with the guts of SQLite enough to say, but wouldn't this be true for an in-memory database too, if you structured the "tables" properly?

Also, I'm not sure I understand how cache coherence would be relevant in the context of what the article is discussing, querying across all game entities to answer complex questions.

Wouldn't cache coherence matter more in the case of single object access?

Re:Why it is time to start thinking of games as databases by ajmmertens on Thursday June 08, 2023 @10:27AM (#36242412)
The query engine works on top of an Entity Component System (ECS) storage that stores entities and their data in cache coherent (SoA - https://en.wikipedia.org/wiki/AoS_and_SoA) data structures.

With any kind of database - even in-memory SQLite - there is a query interface between you and the data. In ECS you access data directly, which is at least an order of magnitude faster.