Arm Yourself with Knowledge
Basic and learner information is contained in this post as a primer for learning how games, and mods, work and interact with each other.
Knowledge is Power
Game Engine
The “engine” is the system in which a game is compiled to work all its parts together. Some engines are open, like the Unreal Engine, or closed such as the Creation Engine for Bethesda games. A “closed” engine is meant to work for one studio, but “open” engines can be used by anyone.
Mesh
A mesh, or model, is the shape of every object in a game, from flowers to trees to people to butterflies, those are what gives the 3D experience for a game. This also includes the ground you walk on and even the sky above.
Havok
Havok provides a physics engine component and related functions to video games.
It allows for opening of chests, collision and general movement, like when a bottle “flings” after you kick it.
It’s also where the animations are stored.
The performance impact of Havok is thus: the game has to calculate the collision detection for *all* moving items per frame. This is why the game was capped at 60 FPS for PC and 30 FPS for Xbox and Playstation. More on that below.
Texture
Textures are the colors applied to meshes so they display as an object your brain can process. For instance; a barrel mesh would be a white or purple blob in game but if there is a texture applied then it would show wood. This is similar to wearing a shirt with a print on it in your every day life.
Rendering
This means that the engine gives commands to your GPU to compute the image. At their heart games are all math. Even textures are stored as computations.
The CE can only render so fast. Bethesda set it to 30FPS. Think of each frame as a heartbeat. In one second it beats 30 times. If it beats more than that it’s having a heart attack.
If it beats less it’s stressed and is working harder to catch up.
Scripts
Every game has a scripting language that tells the game what to do and when. Some games run on the language C++, some run on Python and Skyrim runs on Papyrus. Note: “Script heavy” is an outdated term and should not longer be used.
Effects
Also called “FX” is movement you find in game, such as fire or waterfalls. It is an effect of movement.
Sound/Music
Music is the overall sound of what you will hear in a game, voices are part of the sound system along with sound effects, or Sound FX/SFX, for things like the draw of a bowstring or footsteps.
System on a Chip
SoC. This is used often to describe the inner workings of a console. This is a combination of several components you’d find in a PC. Mainly the CPU and GPU.
But pressing it all on one chip you save manufacturing costs. Microsoft is a business and wants to make money so they want the Xbox to be cost effective.
Load on Distance
LOD or as some call it “Level of Detail” just says when an object switches from a low quality mesh/texture to a high quality one. Note I said; “low quality”.
Yes that means you don’t need High Definition LODs. LODs aren’t “high def” they are very low def. We can use these to soften the blow of an object popping up as you approach, but they are set by Bethesda and there isn’t a lot that can be done with them.
There are two types of load files- meshes and textures. Both are needed. In some rare cases “draw distance” is a term used however, “draw distance” is a buzz word and shouldn’t be used with Skyrim.
Frames Per Second
- The CE is capped to 60FPS on 1X/XS, 30 FPS on Original and S
- Capped means, doesn’t go past.
- There is no such thing as a FPS boost.
- Unless something is very wrong with your console or game this will rarely drop to 28FPS.
- Havok is tied to FPS. FPS that tries to go higher than 30 would cause all moveable meshes to explode regularly and cause the game to consistently crash.
That said, please understand that because the 1X/XS goes up to 60 FPS it can cause nightmares for X users. Because of its processing power, many issues arise. Please read the tab for 1X/XS users if you are one of these to help understand your system better.
A “mod” is shorthand for “game modification” and it asserts the file in question will modify the base, or core, game. In multi-player games these are considered “add-ons” because they add on to the game rather than modify it the way a single player game would do. One person’s add on won’t affect anyone else, whereas a game modification would affect anyone who installs it.
All games run by a “Rule of 1” in which you can only modify one thing at a time before a conflict happens. If you download two mods that edit the same armor, for instance, only one of those mods will show up in your game.
Meshes
A mesh is a specific item that is displayed in game that has two functions: static or moveable.
Meshes have a “polygon” count, which is to say, how many triangles make up the mesh. The higher the count, the smoother the mesh, but also more taxing on your system to display.
A static item is a box or a tree or even a mountain, but a moveable mesh is a character or animal (notably, their skeletons).
In order for meshes to “feel” solid in game they are given what is called a “collision” box. This “box” can be any shape, but the point is to make sure there is a contact with the environment to feel realistic.
If you ever wonder why you walk through a person at times it is because the model does not have a collision box, or it is too small. In some video games we hear the term “hit box” which is really just a term for “collision.”
Some models require bigger boxes, so the bigger they are, the more area there is to connect with.
A “skinned” mesh means that it is “skinned” or “attached” to a skeleton mesh that has specific movements programmed in. Skeletons and animations are housed under the static category, notably the “moveable” static. Because… they move.
Navmesh is also mesh! This is short for “navigational mesh” and is made up of many triangles that link together in a physical form so that NPCs know where they can move. Navmesh has to be clean and finalized in order for the game to proper compute the information so there are little to no problems. All games with any NPCs have navmesh; Skyrim is not unique with this!
Textures
Textures are the graphics you see wrapped around the meshes. They show colour, light reflection and more. There are several sub-categories of textures to understand.
Diffuse map: This diffuse map are the bright R/G/B (red green blue) colours you see.
Normal map: this is a map that is hidden under the Diffuse map; it tells the game where to send shadows. A graphic without a normal map is flat
Mask: A mask defines which surface should be affected by which section of a material. These are either greyscale or a single “channel” such as Red, Green, Blue or Alpha. Masks are used often for character creators to give different skin and hair colours.
Emissive Mask: these are masks used for lights on armour, such as the glowbugs in Skyrim. Think of it like a little glow bug inside the texture paths. Because, really, that is what they do- glow!
Alpha: Alphas are part of textures used to define an area. Say you have a piece of armour but you hate the belt on it. You can open up the texture file and under the alpha properties colour over the area you want to be invisible, save it and in game that belt is “gone.” The model is still there, but not visible to the eye.
Scripts
Different games uses different compilers, which are lines of code that execute a command, included but not limited to actors moving from point A to B, when the sun rises or sets, what happens if a spell is cast and so forth. Skyrim uses Papyrus. The Dragon Age Toolset uses Python. Depending on which game you are modding depends on what scripting language is being used.
Papyrus is dependant on FPS, not the other way around. For a long time people swore that papyrus bogged down FPS but this is simply not possible.
Many times the term “script heavy” is thrown around, but it is a very outdated term. Your game’s Frame Per Second, or FPS, is reliant upon how many models and textures it’s rendering at any given time. While a script that’s looping can cause problems, it’s what is being looped that the problem (such as animations or picking up items over and over again).
Effects
Visual effects are more textures set to animate at specific times. This animation is controlled on the mesh that’s displaying the texture along with a “hook” into the scripting engine to display on a timer.
Sound effects are much like visual effects except for the ear. When a foot lands it makes a sound and the effect is a footstep sound file.
Frames Per Second
The mostly hotly debated and yelled about term in gaming is “FPS.” It stands for “frames per second.” A frame is a measure of how often you see an image on your computer or television screen. Your frames are dependant upon a variety of factors, the major one being the actual hardware that’s needed to display your visuals. The most taxing part of any game will be the meshes (and Havok) and textures themselves. The more meshes you have in an area and the larger the graphics, the more strain on your system.
Intro
This looks like a long post but it will make sense as you read along.
Many 1X/X-Series users (from this point “X” will stand in place to mean both the 1 and Series version of the X console) were given the promise of lots of power, ultra high FPS and UHD graphics. There is a teeny, tiny problem with this: many older game engines aren’t prepared for this.
While the Creation Engine (CE) is “only” 20 years, this is the 20-year-old beast at the heart of the machine. The very code that every Elder scrolls game has run on since Morrowwind. This thing has been around so long there is still code in it from Fallout 3. This is what you are asking to render a 4k image and meshes at 60 FPS. If it were a person it would be on arthritis medication. If it were a building, it wouldn’t be up to code.
The X is set to a specific “overclocking” feature to make it run faster. Remember that faster is not always better and the drawback is heat and the inability to render, or settle meshes, that quickly. It’s like running down the road to grab your mail (30 FPS) or running a 200 metre dash in 18 seconds (60+ FPS); you’ll probably crash to the ground after. (Side note: Usain Bolt’s record is 19.19 seconds).
I’m now going to post a note from Tarshana because her quip about the X has hit home to a lot of users and it’s pretty amusing to read. To add to this, neither she, nor I, judge you for buying an X. It’s a powerful machine and it’s a shame that modding for it can be finicky.
So you did it. You bought an X. All the marketing schemes and promise of “HD”, whistles, bells and hey, probably wipes yer arse, too. And the only thing you probably bought it for is “oh my god Skyrim can be modded on console!” and bought into the lie that somehow modding on console was going to be just like a PC because “we use PC video cards in our console!”
And you bring that bad boy home, film the unwrapping, call your buddies, pop in all the cables, toss out your old console, listening to the HOO RAH shout of the opening Skyrim screen. You download all the mods with the most favourites and stars because those are obviously the litmus for what’s ‘good’ out there. You read a convoluted LO out there and you totally know where the mods go.
You wait for that opening scene… You don’t need to stinkin’ alternate start! You’re hardcore! You can ride through a milkdrinking cart ride! Oh yeah! You got all the good sexy feel good mods. Later on you’re gonna marry that Serana, you got the bitchin face textures, beer nearby. OH YEAH. You totally got this in the bag!
AND THEN EVERYTHING EXPLODES AND YOU GO CRYING AND SCREAMING TO THE FORUMS AND THEN YOU FIND TARSHANA AND TELL HER DIVINE CITIES CAUSES YOU TO CRASH.
Hint: It wasn’t Divine Cities, but let’s look at some technical and behind the scene information before we continue.
We’ll pause a moment to discus “swapchains” which is a vital component in computer computation of graphics. All computer software is ran by languages and these languages speak to each other to tell your computer what to display, or render.
Short and simple: A swap chain is a collection of buffers that are used for displaying frames to the user. Each time an application presents a new frame for display, the first buffer in the swap chain takes the place of the displayed buffer. This process is called swapping or flipping.
The Microsoft Dev Blog Wrote Thus;
— BC6H and BC7 are not supported and will be loaded as “uncompressed”. MSAA texture per-sample shaders is not supported
Supported is BC1/BC2/BC3/BC4/BC5
For UWP on Xbox One apps, the system always indicates a window size of 1920 x 1080 (i.e. 1080p). If the TV is running as 4K on an Xbox One S or Xbox One X, the swapchain content is automatically scaled up by the display hardware.
It is also possible to create a native 4k swapchain, but it’s recommended you only do this while running on an Xbox One X. You can check which device the UWP is running on via a new Windows 10 Fall Creators Update SDK (16299) API.
If you use a native 4k swapchain on Xbox One X and the TV is in a 1080p mode, then image is downscaled automatically by the display hardware which does have the effect of ‘super-sampling’ for better image quality. In other words, if you decide to render at native 4k, you should do so regardless of the TV setting. —
Now read that last part again by Microsoft: if you decide to render at native 4k, you should do so regardless of the TV setting. That’s right. Microsoft told developers to try and force 4k on televisions that don’t even have the capability. Let me ask you- how would you feel about someone putting a diesel truck engine into your 2-door sedan? Not very effective is it? But neither Bethesda or Microsoft seem inclined to change this. Once the 4K patch went live dozens of PC “magazines” raved about how good the game looked and performance was never tested.
It definitely wasn’t Divine Cities or Open Cities or USSEP or anything like that. Loading up 20 Heimskr’s in Whiterun on the X more or less disproved the notion.
So then what was it?! Short answer: Microsoft and Bethesda. Both of them are the ones who agreed to allow the 4k UHD swapchain for textures and increase the FPS to 60. By doing this all the computational data for rending meshes, textures, animations went through the roof and it’s usually more than the console can handle.
Put all of the info together as you’ve read it; between the computational needs of rendering meshes and Havok, we now have forced 4k upscaled graphics and textures on the X putting a greater strain on the X console.
When it comes to the X you want to be more careful about using mods such as SMIM because it increases the polygon count. Keep a save before going into any location and if your console has a problem, reload the save. You should be fine. The same Testing 001 and Whiterun Loop also applies to the X.
Other posts in this series
For more reading enjoyment