1
\$\begingroup\$

Usually, when discussing on performance in games, cache misses and localities come like the real problem. But i feel like videogames are too focus optimization in that way.

For example, the author of this blog entry talks on how essential is a good datastructure to achieve high performance. But out of a situation where you have many entities that will stay on movement almost always, i cannot come with an example where these optimizations can help:

  • Handling the player inventory is a inherently a complex task. You are not going to iterate every inventory to check whether or not an entity wants to retrieve/add an item from/to its inventory.

  • Combat is usually intensive and fast, but from the perspective of the cpu, not frequent. Not every entity will be slashing and definitely not every frame.

  • AI is another good example where you hardly can optimize using big arrays of data. In starcraft linked list were used:

    Linked lists were used extensively in the engine to track units with shared behavior. With twice the number of units of its predecessor — StarCraft had a maximum of 1600, up from 800 in Warcraft 2 — it became essential to optimize the search for units of specific types by keeping them linked together in lists.

So, my question is: Is the cache friendly approach to optimize games wrong or misused?

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.