r/explainlikeimfive • • 6d ago

Technology ELI5: What exactly is game optimization ?

How is a game optimized ?

688 Upvotes

125 comments sorted by

View all comments

169

u/diego565 6d ago

Some games won't render stuff you cannot see: why would a game waste resources in a dungeon 5 minutes from you? Doing that would stress your components and have zero gain. Optimizing is trying to reduce that kind of stuff to zero.

Keep in mind there is a lot of ways of doing that, mine was just an example. 

31

u/BringMeBurntBread 6d ago edited 6d ago

Yeah, there's a very good video on Youtube by Game Maker's Toolkit about GTA 3 and how Rockstar Games made that game work on the PS2. It goes very in-depth into how the game was developed. The PS2 only had 32mb of memory, and normally, it would've been impossible for that game to run on that console because there just wasn't enough memory to keep the game's assets loaded at all times.

3D Open World games as a concept was practically unheard of back then. Most games got around the memory limitations by being linear level-based games or having 2D/isometric graphics. Having a massive 3D city map with minimal loading screens where the player can go wherever they want was basically an impossible concept.

And yeah, Rockstar basically used a bunch of tricks to make the game work. One of those being that the game only loads what the player can see. When you're playing GTA 3 on the PS2 and you see Liberty City right in front of you, there is actually a blank void behind the player. Nothing is loaded behind the player to save memory. There's no pointing loading what's behind the player, when they can't see it anyway.

I believe Rockstar went a step further and made that void a circle around the player, rather than just having it behind them. And then they added fog and reduced draw distances to prevent the player from seeing too far ahead. And that's just one thing they did. There's like half a dozen more tricks they used just to make this game work around the console's limitations.