Engine Scalability
Games usually need some tweaks to their visual fidelity in order to run at an adequate frame rate. As a result game engines usually have some sort of in built tools to decrease the quality of the overall fidelity of the rendering, whether that be in the form of reducing the amount of pixels rendered per frame, or other more asset based adjustments like reducing the resolution of all textures/materials in the scene, particle size and complexity or how level of detail is adjusted per the distance of the object from the player. Different adjustments should be made depending on what platform the game is trying to run on as different hardware have their own strengths and weaknesses that need to be accommodated in order to retain consistent performance. Rigorous testing is advised to find what does and doesn't work well on certain machines to avoid unnecessary visual cutbacks when they are not needed and to make cutbacks when necessary. Different scalability options have their own performance footprint, for example reducing the resolution that the game renders at means that the engine will be rendering less pixels per frame, resulting to an constant overall increase in render time due to the lesser load. Meanwhile reduced particle effect quality will only come into play when particles are appearing on screen.
These functions can also translate into options menus that the player could potentially adjust, graphics options for full 3D games is a must to allow the game to be adjusted to the hardware specifications of the huge array of different machines that could be used to attempt to run a game. These kinds of options are also expected by consumers for the same reason, some users prefer performance over graphics and vice versa and may want to remove or tone down certain visual effects or rendering techniques that they are not a fan of.
Unreal 4 allows a variety of different options to be adjusted for scalability. Such as resolution scale as I mentioned earlier in my research. This option is from a range of 0%-100% and unlike dynamic resolution is static, effecting every single frame rather than only reducing the render resolution of frames when the performance hardware is taxed by certain events happening on screen, such as a large swarm of enemies or a large screen filling explosion
View Distance adjusts when objects are rendered when they are distant away from the player/camera. Rendering fewer objects means less information for the hardware and engine to render. Far away objects are not going to be noticed as much by the player due to their distance and are likely safe to not be rendered without the player noticing their absence. However setting the render distance too low will result in the player noticing it more as the area around them appears barren and objects pop in and out right in front of them as they traverse the area. However sometimes aggressively short view distances are necessary to retain consistent performance. This is one of those options that needs to be carefully tested and considered.
View Distance adjusts when objects are rendered when they are distant away from the player/camera. Rendering fewer objects means less information for the hardware and engine to render. Far away objects are not going to be noticed as much by the player due to their distance and are likely safe to not be rendered without the player noticing their absence. However setting the render distance too low will result in the player noticing it more as the area around them appears barren and objects pop in and out right in front of them as they traverse the area. However sometimes aggressively short view distances are necessary to retain consistent performance. This is one of those options that needs to be carefully tested and considered.
Comments
Post a Comment