The hierarchy of detail

The "hierarchy I have to look up how to spell "hierarchy" every damn time. That's right. I'm man enough to admit it. of detail" is not a widely used phrase, but is still a very important concept to be aware of. It describes what parts of a model are more important, and which parts should be given a larger share of the texture map because of that importance.

This makes use of the simple fact that, given two polygons of equale size and shape, if one is given a larger share of the UV map, it will have more pixels within it, and so have a higher level of possible detail.

Take a person for instance. In day-to-day life, what is the part of a person you look at the most? The face, or the shoes? Seriously, how often do you really look at a man's shoes? In creating a human, would it not make more sense to allocate more texture space to the areas we observe the most so that we can make them more detailed then those we don't?

At the same time we should avoid noticeable shifts in texture quality on models. The islands should be sized in a way that creates linear levels of detail between the lowest and highest chosen detail. Thus, a "hierarchy".

A screenshot from "Alien dating simulator 2009".

Notice how the texture on the face sppears sharper and less blurry than the armor at the bottom of the shot. Here the artist made a deliberate choice to devote more of the UV Map (and therefore more of the texture) to the face since that is whre most of your attention will be centered.

Differently sized maps

Not all textures that make up a material have to be the same size. Typically a normal or bump map might even be half the size of a diffuse map.

Overlapping islands

It can actually be perfectly acceptable to overlap islands within a model. Here are a few examples when that is the case.

INSERT SYMMETRY OBJECT

For the second example examine the models of a wooden bannister below.The model meshes are identical. Pay close attention to the actual texture and the grain of the wood.

Did you notice how the first image on the left had an obviously repeating texture for each lathed support? If you looked closely enough it's even obvious that the top and bottom pieces are sharing the same uv map. Even the feet are textured the same. It's obviousy there are many islands overlapping on the UV map.

This gives the object a fairly synthetic appearance. It looks unnatural and most likely "impossible" if you meant for it to appear to be real wood as real wood would always be unique,

While it would be perfectly possible to seperate out the islands on the uv map so that each and every piece has its own texture this would greatly reduce the amount of detail we could have by reducing the texture size for each piece. When possible we want to avoid blurring the surface as that would do. But how?

The second image shows a fairly simple solution to this problem. We simply rotate the pieces. That's all. The lathed supports have each been rotated to a random direction, the top rail is flipped over, and every other foot is rotated 180 degrees.

This gives the impression of a more organic object with unique texturing from our given viewpoint and allows us to maintain the texture resolution for each piece at the same time.

There are times when you won't be able to take advantage of such shortcuts. When using advanced shaders such as displacement or normal maps the map itself might be dependent on a particular orientation or direction.

Spheres

As stated before, for all the challenges of texturing complex characters and props, the main challenge of texturing increases alongside the number of curved surfaces. So you can imagine that a simple sphere remains one of the more challenging objects to properly texture.

There are two approaches to texturing a sphere. Just keep in mind the first makes use of a photoshop distortion filter.

It is important to remember that with any approach, distortion will be inevitable.

First the photoshop filter approach.

We start by opening the file in Photoshop and applying a the "polar coordinates" distortion, which is found under Filter > Distort > Polar Coordinates. The only option in this box should be the distortion approach, make sure that "Rectangular to Polar" is checked before saying "ok". The density of

The UV map for the sphere should have two islands. The top half and bottom half of the sphere. These two islands can overlap or not (they do in the example to the right, hence the top/bottom symmetry). It's easiest just to select one half, apply flat project from the top or bottom, and then use a relax function.

The texture I want to apply to the first sphere.
After doubling the width (by copying the image), and then applying the polar distortion filter.
After being mapped onto a sphere.

The second approach is easier to set up, but requires a certain kind of texture. The textures for this approach must follow a square pattern. They do not necessarily have to be squares, but the pattern works best when the one side of the image can be matched with all three sides instead of just the opposite side like most patterns.

First we create a cube. Make sure the box is a perfect cube, with the same value for length, width, and height. An irregular cube will lead to an irregular sphere.

Then if they are not set up automatically, we make sure that that the UV map has each face matching the direction of the texture pattern, and that each corner of each face falls on a similar point within the texture pattern. The UV map to the right unfolds the cube to be one island, but this approach would still work if each square face were seperated to be its own island (and that would fill more image space). What remains important is that each square has the same pattern within it.

Then simply apply a subdivision with smoothing to the box to make it look like a sphere.

Also keep in mind that while it appears as one, a subdivided box may not be "perfectly" spherical, depending on your software. If making a game or program that requires physics, make sure to make the physics model from an actual sphere object and not the subdivided model, as you should be anyway.

The "cross" texture for the 2nd method. Notice the pattern goes in the same direction as the box edges of the uv map (also shown).
The pattern mapped onto a cube with the "box" type uv unfolding from above.
The same box, but after mesh smoothing / subdivision smoothing applied. Notice the single "triangle" caused by three planes meeting at a corner.

Photos as texure sources

Composition

When photographing a surface to use as a model texture it is important to minimize perspective distortion as much as possible. This is logical since you basically try to do the same thing when unwrapping the uv map of an object to begin with. Basically this will come down to trying to photograph a surface from as perpendicular an angle as possible.

Below is a visualization of two scenerios. On the left is a camera that will record the surface in front of it from as perpendicular an angle as possible. On the right is a camera that will record the surface in front of it from an angle (about 25 degrees off to be exact).

Imagine the visualization above as being someone actually holding a camera in real life.

Now let's see what kind texture made from each of these positions would create. The boxes below have been made with simple cubic mapping. There has been no distortion of the polygons on the uv map or attempt to fix the original image.

So is it possible to fix the original image in cases where it is impossible to acquire a perfectly perpendicular image?

Bump maps and shadows

Making seamless textures

Sometimes when crafting a mesh texture it's necessary to use a repeating image, such as with a floor tile, repeating clothing pattern, or wallpaper.

For instance a plaid shirt might start with the artist repeating a square pattern on a canvas and then manually painting clothing folds, wear & tear, and possible symbols over the uv island area manually.

Elsewhere a dirty hallway in a huanted mansion might use a repeating tile floor but have unique features like grime and dirt swept to the side that we don't want to obviously repeat.

In both these cases the artist will have to make sure a viewer can't see where the repeating texture begins and ends. Literally the edges of the source image, especially with photo sources, need to match one another.

Generally making a seamless texture involves two things.

  1. Shifting the image so that the image edges are located near the middle of the canvas.
  2. Use stamp and/or heal tools and/or masking to join the areas with visible seams.

Let's look at a visual representation of this.

The visual representation is, sadly, unvisualized.

Creating an actual "pattern" in Photoshop that can be used by the paint bucket tool or layer effects is actually very simple. Getting an image ready for this is slightly more complicated depending on the image.

  1. Modify the image to be as seamless as possible.
  2. Select "Edit > Define Pattern".
  3. Give the new pattern a name in the window that pops up and hit "ok".

Your pattern is now created and can be used in other documents.

The easiest way to apply your new pattern is to select the paingbucket tool (default "g") and in the tool specific options at the top change "foreground" to "pattern" if it is not already selected. You'll now see an option to select your pattern next to the word pattern. Using the paintbucket tool at this point will fill an area with your pattern.

There is a problem with this method. In some versions of Photoshop the scale of the fill size will be dependent entirely on the size of the original pattern image.