Data baking is just like real baking, says veteran programmer Noel Llopis in a new Gamasutra technical feature
-- and who doesn't like a delicious cookie?
As an internal process, data baking rarely gets a close look. But according to Llopis, it can have a deep impact on not only the game's architecture, but on development process and even the player's experience.
Llopis explains in depth how the data baking process can be streamlined so that only 3 steps are left at runtime:
These steps happen offline:
1. Exporting from content creation tool
2. Transforming into final format
3. Combining into a memory image
4. Updating data references.
Which leaves only the following steps at runtime:
1. Loading memory image
2. Pointer fixup
3. Extra processing (optional).
Notice that we've done all the heavy lifting during the baking process offline, and the steps performed at runtime are very simple and very fast.
This illustrates what I used to call the Fundamental Rule of Data Loading: Don't do anything at runtime that you can do offline. Can you generate mipmaps offline? Can you generate pathfinding information offline? Can you fix up data references offline? You know the drill. This rule reflects the fact that it is often much faster to load data than it is to do processing on it.
But the issue's gotten more complex as hardware has, too, and in the full feature
, Llopis breaks out his key tips for a fluid data baking process (no registration required, please feel free to link to this feature from other websites).