the Sim Settlements forums!

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Hardware, Textures, and Fallout 4

This is a work in progress. Information-gathering and fact-checking will be ongoing. Also making it all look prettier.

Tentative topics are as follows:

1) Textures & XBox
2) Mipmaps
3) What Size Should I Use?
4) Gimp and Photoshop
5) Elrich

X) Screens & Hardware
X) Textures & Game Design Choices
X) How & Why

More categories will be explored as I learn more. Rearranging is highly likely.
 
Last edited:

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,243
Textures

According to damanding:

* If your textures DO NOT include alpha, save the file as DXT1.

* If your textures DO include alpha save the file as DXT5.

* Normals are almost always DXT5 since they have alphas for the shine values.

* Speculars usually are DXT1.

* Skin files are BC7

XBox

* BCx files won't compress at all on XBox but DXTx will

* XBox can run BCx files, they just take up more space and have worse performance

* And *always* generate mipmaps for XBox
 
Last edited:

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,243
Mipmaps

From damanding and others:

“And *always* generate mipmaps for XBox.”

* You definitely want mipmaps even if they take up more space, they drastically improve performance

* Mipmaps for performance - that's their purpose

* Mipmaps were originally intended as a quality-at-a-distance improvement, performance came as a side-benefit

* If you don't generate mipmaps everyone has worse performance, both PC and XBox

(What is the side-effect of no mipmaps?)

* With rasterization (generating on the fly) the game engine says “render this” and the graphics card does a “what pixel in the image” math - it may look odd

* A good mipmap generator pre-determines “what pixel is important”, making the image look better from a distance

* Without mipmaps it can look strange from a distance, plus you get really bad performance - the XBox gurus will recommend users don't use your mod (for performance reasons)

From Jonathan, more info:

* Things will still work without mipmaps

* However the game could be trying to render that 1k texture on a 3 pixel tall model half a mile away

Essentially you as a mod author are making the game engine struggle by forcing it to resize your textures on the fly. A lot of non-mipmap textures will drop the user’s fps dramatically while the engine resizes things to cope.

From damanding:

* Performance is much more critical on XBox than PC

* If you're going to damage the intended performance systems then don't publish for XBox

* Space is a concern, but mipmaps are too important to do without in exchange for a smaller mod

* Most users would have no way of knowing that your textures will cause reduced performance

* Users therefore have no way to provide you with that feedback

Texture sizes, damanding:

* Never publish 4k for XBox

* 2k is the max and should be used rarely

* Have you ever noticed an object with a somewhat blurry looking texture that then suddenly looks detailed? That's the mipmaps at work.

* (Whisper) An addition - if the item is small (like a bottle size?) then you don't need 1024 or 1k size - 512 or 1/2k size should be plenty. (Probably less is needed - players aren’t going to be regularly looking at a bottle, fuse, screwdriver, wrench, etc at close range - it’s a waste of space.)

How the game loads textures, damanding:

* The game loads the mipmaps first and then the full texture as you're closer

* If it's having to load the full texture even from far away, that's worse for performance in general

Final summation from damanding:

* (If you have no mipmaps with your textures) Redo all your textures and add mipmaps, everyone will love you for it

* Also if you're using GIMP, use a recent version of it, older versions of the program broke mipmaps

Technical Details of Mipmaps

When you get close to a wall, the game has to start magnifying (aka upscaling) the image. Since the basic detail is not there everything gets blurry. The way to fix that is to have a higher resolution image of the wall - at the cost of bigger filesize.

When you get farther away the game starts downscaling the image. When that 1k image only covers a 512x512 area of the screen the graphics card/cpu starts to work. They work harder when things are at 256x256 and 128x128 areas of the screen.

When that area of the screen is only 3x3 pixels size it is doing a lot of calculations.

To save the computer/console from grinding hard when it tries to render that 1024x1024 image to cover a 64x64 area, the designers of the game did something really smart: they pre-generated lots of smaller images and saved them in the dds file. These pre-generated smaller images are called mip-maps.

Mipmap Size

A texture file of 1024x1024 size is generally around the 1.3 megabyte size.

What the mipmaps do is add progressively smaller images into the same file (so that the system doesn’t have to keep track of lots of files of different sizes).

Each smaller added file is half the screen resolution of the last, all the way down to a 1x1 pixel “image” that is a wall of that 10-story building a mile away in the game. So the standard 1k file holds a bunch of pictures of these sizes:

1024x1024
512x512
256x256
128x128
64x64
32x32
16x16
8x8
4x4
2x2
1x1

If the original full-sized file was only 1mb size, adding all of these extra images into it will increase the file size by only 1/3rd. This turns a 1mb file into a 1.3mb file - slightly more size and much easier for the game to deal with.

You will note that all of the images described above are square and in multiples of two. This is a built-in part of the optimization system. While it might seem like a good idea to shave off a little image size by using a smaller image (900x900?) this breaks the game optimization. It causes the system to work harder, may cause the images to look weird, and might cause game crashes. Ditto for not making mipmaps at all in your images.

Summary

When choosing what size of texture to put up, take into account the size of the object and how close the player will likely get to it. A 4k 10mm bullet texture (for example - I've not looked to see if there actually is one out there) is humorously silly in context and is a waste of system resources.
 
Last edited:

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,243
What Size Should I Use?

This depends on the importance of the item. (Thanks to kinggath for helping me clarify this in my head.)

Bottles, cans, bullets, stones, lighters, unimportant stuff you walk past, stuff you don’t see often, tiny objects - generally not that important.

Snazzy clothing, weapons, paints, skin, unique quest/game items - probably middling to high important.

Really beautiful and artistic stuff (Unicorn Farts and Godrays level of stuff) - high to very important.

Important?

Whether it’s the core of the item/mod or something peripheral. Having fancy lighting with special glowing effects etc is important. A unique outfit. Something core to a mod.

Background

The base game textures in FO4 are 1k or smaller in size. This means that on a 1920x1080 screen (high settings) the texture of a flat item like a piece of paper will cover 1/2 the screen - a 1024x1024 area.

When you wrap that around (say) a beer bottle, it might be visible on a 512x512 area of the screen - if you’re really close to it. I will put up a snapshot later with some accurate numbers - I’m picking that the actual texture size for most inconsequential items is going to be 512x512 pixels or less.

The HD texture pack adds 2k textures. Bethesda got some flack from that - some were not optimized and caused stuttering and crashes. Also things like the Rusty Face Fix, caused by size mismatches.

Not everything was upgraded to 2k either. I’ve seen a few complaints across the internet about the HD pack not looking that great. There was no real point to upping several items to 2k. I’m not certain if these people realized that.

When you play ultra settings, the screen size is 3840x2160 - that means that the 1k texture above will cover 1/8th of the screen. At this point there is a case for using 2k textures.

Size of Textures

1k = 1.3 megabytes
2k = 6 megabytes
4k = 22 megabytes
8k = 90-odd megabytes

There are 3 files which make up a texture:

_d.dds = visual colors etc
_n.dds = normal maps, or texture/bumpiness
_s.dds = shininess, like glossy/metallic

If your texture is full-sized for all three files then you have tripled the size. Some things you can get by without. Others you can get by with a smaller file.

Remember that consoles have a 2 gigabyte limit for mods. Your textures (all 3) are competing for this space.

Consoles are also about 85% of the gaming market. (Personal opinion: This will likely increase once the PS5 comes out.)

Translation

Small items of little importance, don’t use big textures. Having a 4k texture for a cigarette is a waste of system resources and makes the user’s computer/console struggle. It’s also not going to be seen - unless the user faceplants into the item on a regular basis.

Seeing a common wall on a regular basis - a decent HD/2k image can improve the user’s game. Ditto for trees, bushes, etc. As above, excess size on an XBox is hard on that system.

Remember: if it’s not being seen often/close up, big textures are counterproductive.

Rough Guidelines

Eyes: 256x256 maximum, more is likely pointless/overkill.

Face: 512x512 for the base game, 1024x1024 in the HD pack. 2k and 4k are possible - the Rusty Face bug is caused by mismatched face/skin texture sizes.

Clothing, vending machines: 1024x1024 for the base game, probably 2k in the HD pack.

(I will come up with more examples later to flesh this area out.)

A safe choice is likely to stick within the above guidelines for the HD pack. As an artist and modder you’re free to go all the way to the max. Remember though: you’re restricting your mod’s audience.
 
Last edited:
Top