Page 1 of 1

Database Performance Guide

Posted: Sat Oct 09, 2021 2:40 pm
by SealDev
What is the expected effect on performance depending on size of the database / number of entries?
Does it affect just editor performance or also game performance? Loading time, fps, ram, cpu, gpu?

What is database performance at:
-10mb
-100mb
-1gb
-a novel's worth of words
-multiple novels

Should people who make really big games be concerned? At what point?

Re: Database Performance Guide

Posted: Sat Oct 09, 2021 3:02 pm
by Tony Li
It mainly just affects editor performance, and it's due to the way the Unity editor serializes assets -- not just dialogue databases, but any asset. Very large animator controller assets, for example, can get slow in the editor.

For the most part, there isn't any runtime concern. Disco Elysium has the equivalent text of several novels; and Tortured Hearts has over 500k words, or the equivalent of 10 novels.

The primary runtime concern is if you use SimStatus. This saves information with every single dialogue entry node. If you have a lot of nodes, it ends up being a lot of information to include in saved games, which can slow down the process of saving and loading games. The Dialogue System has a 'raw save' mode that speeds up the process but at the cost of larger saved game files. If you don't use SimStatus, you don't have to worry about that. Disco Elysium uses SimStatus, by the way. They use 'raw save' so it doesn't have as big an impact on saving and loading.