What Is Good Game Optimization?

Optimisation is often a pretty touchy subject to tread on. Most gamers term a game "unoptimized" without knowing what it really is. Today, we are going to go in depth to find out what it really is and how much impact it has on PC Gaming.

Definition

Optimisation by literal terms means to make something fully functional, able to run perfectly on a set of resources that are required for it and not ask for more. While I must make it clear that no program in this world is, was or will ever be perfect but we can say near perfect if it is able to utilise the required resources effectively and deliver the desired results on the recommended hardware. Programs have bugs which some people will confuse into the subject of optimisation but both of them are 2 entirely different subjects. Let us discuss some factors that affect the optimisation of a game:

Code And Engine plus Relation to Modern Tech And Requirements

Games nowadays are built with some pretty complex engines (talking about AAA titles) which have enabled developers to put more using less and make the game magnificently big. Nowadays you will notice a geometrical increase of hard disk space required by the games as well as the requirements of CPU, GPU and RAM. This is due to the advancement in technology and new devices available to devs that enable to utilise their code effectively. Another common issue within the gamer community is that huge requirements mean bad optimisation. This is a FALSE statement and something that needs to be addressed at the highest level. Increasing requirements are only the indicator of games getting bigger and more visually demanding. While then we compare it today's consoles (Xbox One or PS4) whose hardware is mostly comparable to HD 7870 or so at max while also keep in view that Xbox 360 and PS3 GPUs are more or less comparable only to Radeon HD 1900XT or higher. This is a dramatic increase and with more resources, as I said, Devs can do more and make their game a lot more beautiful.

We must also realise that consoles software, OS and codes are entirely different from that of PC. Every developer has a separate department or team of coders which handle a particular platform. Sure if your GTX 660 has a problem with a game such as Far Cry 4, it is not fully able to max it on 1080p that doesn't mean it is badly optimised. It means that the game is visually demanding, immersive and beautiful. And if you say that those consoles are still running it easily then just keep in mind, they have reduced settings and a lot of settings such anti-aliasing turned off in most games.

Going back to game engines, I will give an example of 2 games from the same developer. Assassin's Creed Unity and Assassin's Creed Rogue. Both are very recent and are from the same franchise but development on both of the games have been different. Both of them have been made from the same engine dubbed as AnvilNext but there are distinct differences between them. Assassin's Creed Unity has been dubbed as the next generation as it utilises the advanced methods and techniques of that very engine and is not available on the last gen consoles. Furthermore, it is more visually demanding and has a big world (which is obvious since it is based in the city of romance; Paris) than Assassin's Creed Rogue which is the successor of Black Flag and utilises almost the same code as its predecessor.

That is not to say that Unity is unoptimized but that it is just visually demanding and taxing on today's hardware. If you are going to call AC: Unity unoptimized, then might as well call Crysis 3 unoptimized, it is a beautiful first class shooter. However, if you call AC: Unity unoptimized because of the horrendous bugs then you are true to some extent as they do affect the game's performance but just keep in mind, It is also visually demanding.

Bugs

Bugs are the errors in the program which prevent it from running smoothly or in some cases totally prevent its execution. Optimisation of a game, in this case, is somewhat dependent on bugs but only in some cases. If a game crashes or fails to start then it is not totally due to bad optimisation, it's just due to bad code and syntax errors vice versa. Optimisation will be affected by this; notable examples none other than yours truly AC: Unity and GTA IV but they can be fixed with patches and so on. Another case could be due to lacking hardware but this is not the devs problem, it is yours. Glitches, crashes etc occur within the game are not the result of bad optimisation but due to bad code. These are easily fixed over time by patches etc.
I cannot stress enough the importance of how a great role an API plays for gamers and developers themselves as this is the core component that allows the developer's code to effectively communicate with the machinery. APIs are an essential part of game development. And most of you will be aware of the wonderful work Mantle has been doing in AMD optimised games delivering a lot of fps increase in games such as Battlefield 4 and eliminate CPU bottleneck are just some of the extraordinary tasks that can be achieved by these interfaces. The upcoming DirectX 12 also holds a lot of power and can significantly increase fps as demonstrated by Intel months ago in a synthetic benchmark shown below:




The demo showcases a massive 73% improvement over the predecessor API and can also significantly reduce the power consumption and making fewer draw calls thus being less taxing on the hardware. The more advanced an API is used within the game, the better optimised the game will be and also use fewer resources and still do more. For more info on what an API really is, be sure to check out this guide.

DRMs

Devs have always been on the move to eliminate, humiliate pirates and this software or coding helps them do it nicely but it may have a lot of adverse results on the overall performance. Recently Dragon Age Inquisition had a huge DRM that hampered it's performance not on all hardware but it did have an adverse effect. Not all DRMs are bad but behind the scenes, they utilise the computer's resources to keep on checking the file records to make sure everything is clean and clear of cracks or keyloggers. This, in turn, does slow down the performance of the game so having a bad effect on optimisation of the game. Most notable example of DRMs is Denuvo.

Let's go through some examples of badly optimised games of the history
  • Grand Theft Auto IV
  • Rage
  • Planetside 2
  • Saints Row 2
I hope I managed to clear some bits about optimisation to you in this extensive article. It is a touchy subject and even now I believe there still needs to be a long debate regarding it but I am just hoping that I at least managed to clear the basics to you! Express your thoughts in the comments.

No comments

Powered by Blogger.