Level of Detail Utility
Try this simple .vtm of mine or go to the tutorial below.
The Level Of Detail utility lets you construct an object that alters its geometric complexity or level of detail based on its size in the rendered image. You create several versions of the same object each with different levels of detail, group them as one, and then run the Level Of Detail utility, which automatically creates a special LOD controller as a Visibility track. The LOD controller then hides and unhides the objects in the group, depending on their size in the rendered scene.
The main purpose of this utility is to save time in rendering complex objects and in manipulating objects in the viewports. Since a portion of rendering speed is directly related to the number of faces that must be rendered in a scene, using the Level Of Detail utility lets you reduce the number of rendered faces as an object reduces its apparent size. In addition, you can use this utility to display a simple stand-in for a more complex object in the viewports. Since the stack is not calculated for objects hidden in the viewports, you can speed up viewport manipulation by using this utility to substitute complex stack objects with simple stand-ins.