Edit: Really enjoy threads like this, because you learn and see so many Pov.
My favourite answer (not in this thread unfortunately) was:
*”If you write a story, the number of words you use can affect the reader’s experience.*
*Use too many words, and the reader takes a long time to get through the book, has difficulty remembering everything, and can’t separate what’s important and what’s not.*
*But use too few words and the reader will get an incomplete picture, make mistakes in understanding the story, and eventually become disinvested in the book.*
*A poorly optimized game is like one of these examples. Either too much goes in, making it difficult for the hardware to cope, or not enough goes in, making the game buggy and broken. (Sometimes both, but that’s beyond ELI5).*
*When it comes to optimising a reader’s experience, it is not about putting more or less words in but choosing the right combination of the right words at the correct time in the plot. Optimising a game is similar concept.*
*Most importantly, no matter how well you write a book, there are always people who will think it could’ve been written better, especially by them. “*
In: 404
Poorly optimized means it consumes way more resources than it should have been given the resulting visual appearance.
Optimizing a game on older hardware was proper computer science, how to achieve same or similar effects with much less computational overhead is not one question, but thousands of them added together, don’t expect an eli5 answer on this, it probably needs PhD in both computer science and applied mathematics.
Optimizing on modern hardware is much easier because ground work has been done by those PhDs in game engines, just tune the graphics settings to find a sweetspot between visual effects and framerate.
Well, computers come with different hardware. And not just PCs, either. Even the same console can come with different hardware iterations. And each of them may work a little differently.
When talking about optimization, what is meant is that the game is programmed to run on a specific hardware setup. For instance, one processor model might be a bit faster calculting things one way instead of the other. During optimization, you would program the game to use the faster way, in so far as doing so is possible. This improves performance.
When a game is poorly optimized, what people mean is that it performs poorly because steps like what i described above have not or only barely been taken.
A poorly optimized game is one that runs poorly and does not take advantage of the hardware.
The game (or any software) should be designed with the hardware in mind. For example let’s say a game has 2 levels. You can only play one level at a time. It would be very wasteful to load both levels at the same time when only one level is being used. So games will load only what they need.
A poorly optimized game would load all the levels at once which would use up all your resources.
In terms of how you optimize it’s like asking “how do I clean a house”. There’s a lot of things that can be done. Some big some small.
For example. If you have a scene in a game where there’s lots of enemies. Like an angry mob. Games will often put the very detailed enemy models at the front of the mob. But the ones at the back will be low resolution, and lack detail. This is because they know the player is not allowed to go back that far. They won’t notice that the far away ones don’t look as good.
This video series shows off some of these ideas without going into game design itself. https://youtube.com/@BoundaryBreak?si=lkRU1ngsFKBwx-n3
It’s often down to some decisions you make which means having to do less maths. Really simple example – in a 3D game like they all are now, the computer has a 3D model of each character on the screen, but it only needs to do the maths to draw the side facing the camera. If it drew the other side as well, it would be slower. So optimisations are typically ways to do less maths to get a good enough result.
Poorly optimized means that the software is wasting time or resources somewhere.
Optimization is looking for these slow downs / wasted resources and improving them.
Say we are working on a large open world game, you and I are level designers. We each need a table for our part of the world. So we go to our graphic designer and get a table model, he gives us the same model hes been working on, and we put it into the game.
This is poorly optimized. We’ve both added the same asset in two places, so we are loading it twice. There are two identical tables being loaded. Instead we should add the asset once and then both reference that single asset.
While a single mistake like this wouldn’t directly affect performance greatly, repeatedly doing it could.
Running everything in a game properly is really slow, so once you know what your game is like, you start adding shortcuts.
A really simple one is Frustum Culling, basically “Don’t draw things the player isn’t looking at”, sounds simple right? But figuring out what’s in the players line of sight is challenge in itself, and what if you want to increase the player’s Field of View later? You’ll need to change all your calculations.
What if you’re making a zombie horde game, and you can make the zombie movement calculations faster by going “Well a zombie is always between 1.5m and 2m tall”, but then Steve from marketing says he’s done a deal with Crunchyroll for an Attack on Titan tie-in and can you put in some really big zombies?
Generally you want to do these steps later in development, in case you change something that ruins your assumptions, but then the game needs to hit its release date and there’s no time. It is joked that the two rules of optimisation are “Don’t do it” and (for experts) “Don’t do it *yet*”.
People usually don’t know what it means. It means software runs fast and efficiently on the target hardware.
But people often use it to mean pathing and ai are bad. Of things like that.
Optimisation is expensive and can only really don’t near the end of development. Often if a project isn’t managed well there isn’t time for it and barely time to implement all the content.
There is a gazillion shortcuts in game development that you can take to make different parts of the game perform better without losing much quality. But this require a significant amount of time and skill investment.
Games these days are released full of bugs and with little optimization because studios and publishers want to make money asap, rush development and some even release unfinished games.
Latest Answers