Preventing Imposter Lurching

In a previous post I showed how I generated imposters for large number of repeated items like trees, grass etc. A problem with this approach is that I take an image (a texture atlas) of the 3D model in a sheet of 8×8 images, and select the correct image based on the cameras angle to the location of the imposter. In this way as the camera moves the imposter displays a series of images which give the impression that the object is being rotated by the movement of the camera related to the object.

I do this to prevent the static 2D image suddenly jumping to the 3D image and rotating at the same time. This isn’t necessary for objects which are symmetrical around their Y axis, but for really effective models you don’t want them symmetrical anyhow.

Depending on the distance from the viewer this transition between one texture atlas tile and another can be visible as a lurch from one rotational offset to another. The simple trick suggested to me on GameDev.net was surprisingly affective – just sample the two nearest tiles and lerp between the pixel colours based on the weighting of the angle applied to each tile.

Simple and effective.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s