How to: Create and Modify MIP Levels
This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, use the version selector at the top left. We recommend upgrading to Visual Studio 2019. Download it here
This document demonstrates how to use the Image Editor to generate and modify MIP levels for texture-space Level-of-Detail (LoD).
Generating MIP levels
Mipmapping is a technique that's used to increase rendering speed and reduce aliasing artifacts on textured objects by pre-calculating and storing several copies of a texture in different sizes. Each copy, which is known as a MIP level, is half the width and height of the previous copy. When a texture is rendered on the surface of an object, the MIP level that corresponds most closely to the screen-space area of the textured surface is automatically chosen. This means that the graphics hardware doesn't have to filter oversized textures to maintain consistent visual quality. Although the memory cost of storing the MIP levels is about 33 percent more than that of the original texture alone, the performance and image-quality gains justify it.
To generate MIP levels
Begin with a basic texture, as described in How to: Create a Basic Texture. For best results, specify a texture that has a width and height that are a power of two in size, for example, 256, 512, 1024, and so on.
Generate the MIP levels. On the Image Editor Mode toolbar, choose Advanced, Tools, Generate Mips.
Notice that the Go to Next Mip Level and Go to Previous Mip Level buttons now appear on the Image Editor Mode toolbar. If the Properties window is displayed, also notice that the read-only properties Mip Level and Mip Level Count now appear in the image properties.
Modifying MIP levels
To achieve special effects or increase image quality at specific levels of detail, you can modify each MIP level individually. For example, you can give a textured object a different appearance at a distance (greater distance corresponds to smaller MIP levels), or you can ensure that textures that contain text or symbols remain legible even at smaller MIP levels.
To modify an individual MIP level
Select the MIP level that you want to modify. On the Image Editor Mode toolbar, use the Go to Next MIP Level and Go to Previous MIP Level buttons to move between MIP levels.
After you select the MIP level that you want to modify, you can use the drawing tools to modify it without changing the contents of other MIP levels. The drawing tools are available on the Image Editor toolbar. After you select a tool, you can change its properties in the Properties window. For information about the drawing tools and their properties, see Image Editor.
If you do not need to modify the contents of individual MIP levels—as you might do to achieve certain effects—we recommend that you generate mipmaps from the source texture at build time. This helps to ensure that MIP levels stay in sync with the source texture because modifications to a MIP level are not propagated to other levels automatically. For more information on how to generate mipmaps at build time, see How to: Export a Texture that Contains Mipmaps.