# Texture Resolution

Now that you are familiar with the way that UV maps work, it’s important to discuss the textures themselves.

If you have played older 3D games (c. 2000), the concept of a texel will instantly be familiar. Minecraft is another fine example, but that style is done with more intentionality.

alt text alt text

A texel is the screen space covered by one pixel of a texture when that texture is applied to a 3D mesh. Sometimes the definition is slightly looser, referring to regions of the texture and how they map to what is seen by the player.

In older 3D games, due to hardware limitations, textures were very low resolution, resulting in texels which are very large on the screen. Game engines typically apply some kind of filtering to these textures to avoid excessive pixelation (again, the style of Minecraft being a notable exception), and so the result is often a muddy, blurry texture (e.g. Banjo-Kazooie, top). Modern games (e.g. Star Citizen, bottom) have much, much higher resolution textures and require much, much more capable hardware.

In an ideal world, one pixel of a texture on any object would always map to one pixel on the player’s screen. This gets problematic when considering 1920x1920 textures on every single object, so there are a few considerations that can be summarized as follows:

  • Will this be played on high-end or low-end hardware?
  • Is this object going to be large or small in the world?
  • Will this object be seen up close by the player?
  • Does this object need text or fine details on it?
  • Will this object be moving or static?

NOTE

UDK will only accept perfectly square .TGA textures, and prefers that the resolution is a power of 2 for reasons discussed below.

The following table contains some guidelines, with the previous questions in mind:

Resolution Use Case File Size
2x2 Placeholder 16 B
4x4 Placeholder 64 B
8x8 Very minor details, like screwheads 250 B
16x16 Minor world details, like camera flashes ~1 kB
32x32 Minor world details, like railings ~3 kB
64x64 Tiny background objects, like crowd eggs ~10 kB
128x128 Small background objects, like tree trunks 30-150 kB
256x256 Small background objects, like banners 100-500 kB
512x512 Large background objects, like rocks 0.3 - 1.5 MB
1024x1024 Gameplay surfaces, like walls 1-5 MB
2048x2048 Gameplay surfaces, like the ground 3-15 MB
4096x4096 Gameplay surfaces but as a sparse image, like trim 10-50 MB
8192x8192 Many/all gameplay surfaces combined into one image 30-150 MB
16384x16384 This and larger should not be used 100-500 MB