UDN
Search public documentation:

TextureProperties
日本語訳
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 Home > Materials & Textures > Texture Properties
UE3 Home > Texture Artist > Texture Properties

Texture Properties


Overview


The texture properties window is usually summoned from the Content Browser by double-clicking on a texture asset. It allows you to preview the texture and edit its properties. You can also apply color adjustments and modify compression and LOD settings here. Note that you can resize the texture preview window by clicking and dragging in the lower right hand corner.

TexturePropertiesOverview.jpg

Texture Info


The Texture Info section displays information about how the texture is currently being displayed, statistics about the texture such as size and compression method, as well as platform-specific settings for the texture.

Properties


Color Adjustment Settings

The following properties allow you to adjust the texture's color without modifying the actual source art. These changes are applied at compression-time.

TextureAdjustments.jpg

Note that you can easily transfer for these settings between textures! Just right click on a texture and select Copy Texture Adjustments to Clipboard, then select one or more destination textures, right click and select Paste Texture Adjustments. The settings will be transferred to all of the selected textures. Note that this may take awhile as the textures may need to be recompressed.

CopyTextureAdjustments.png

AdjustBrightness

Scales the brightness of the texture by multiplying the HSV Value component by the number specified. Values greater than 1.0 increase the brightness of the image, while values less than 1.0 will decrease the image brightness. You can enter whatever number you want, but the final V value will be clamped between 0.0 and 1.0 (per pixel.) The default for this setting is 1.0.

TextureAdjustBrightness.jpg

The above image has been modified with AdjustBrightness set to 5.0.

AdjustBrightnessCurve

Modifies the brightness of the texture using a curve. Each pixel has its HSV Value component raised to the power specified. This scales the image brightness non-linearly using curve defined by the power function. Values less than 1.0 increase the brightness of the image, while values greater than 1.0 will decrease the image brightness. You can enter whatever number you want, but the final V value will be clamped between 0.0 and 1.0 (per pixel.) The default for this setting is 1.0.

TextureAdjustBrightnessCurve.jpg

The above image has been modified with AdjustBrightnessCurve set to 0.5.

AdjustHue

Modifies the image hue by shifting the HSV Hue component along the color circle by the specified number of degrees (0.0 - 360.0). Very small numbers will slightly tint the color of your image, while large number may change the color radically. If you use a number outside of the 0.0 - 360.0 range, then the hue will "wrap" to a number within that range. The default for this setting is 0.0.

TextureAdjustHue.jpg

The above image has been modified with AdjustHue set to 180.0.

AdjustRGBCurve

Modifies the brightness of the texture using a curve. Each pixel has its linear-space RGB values raised to the power specified. This scales the image brightness non-linearly using curve defined by the power function. Values less than 1.0 increase the brightness of the image, while values greater than 1.0 will decrease the image brightness. You can enter whatever number you want, but the final value will be clamped between 0.0 and 1.0 (per pixel.) The default for this setting is 1.0.

TextureAdjustRGBCurve.jpg

The above image has been modified with AdjustRGBCurve set to 0.5.

AdjustSaturation

Scales the texture's color saturation by multiplying the HSV Saturation component by the number specified. Values greater than 1.0 increase the saturation, while values less than 1.0 will decrease the image saturation. A value of zero will result in a fully greyscale image. You can enter whatever number you want, but the final S value will be clamped between 0.0 and 1.0 (per pixel.) The default for this setting is 1.0.

TextureAdjustSaturation.jpg

The above image has been modified with AdjustSaturation set to 5.0.

AdjustVibrance

Adjusts the texture's saturation using a number between 0.0 and 1.0. This applies a custom algorithm that attempts to increase the saturation of colors that are naturally less saturated. This is useful when you want to bring the less-saturated parts of a texture up to match the other already-saturated pixels. The default for this setting is 0.0.

TextureAdjustVibrance.jpg

The above image has been modified with AdjustVibrance set to 1.0.

MipGenSettings

Sharpen.jpg

This option allows to customize how the content of the mip-map chain looks like. The Setting "Simple Average" works very similar to the old method before the setting became available (average content of 4 pixels/texels to one). Unfortunately the usage of mip-maps can reduce texture details. In order to counteract the blurring the mip-mapping introduces it's possible to sharpen the image during down-sampling to restore some of the information loss. Used to a limited amount (values up to 4 or 5) it can help to increase the image quality without performance loss or memory cost. Using strong sharpening (values bigger than 6) can result in dark or bright borders around the image content but this might be acceptable in certain situations (depending of art style and texture content).

Often you can leave the setting to "FromTextureGroup" when the actual MipGenSettings are grabbed from the texture group stored in the global INI file. This is the relevant section in "DefaultEngine.ini":

...
TEXTUREGROUP_WeaponSpecular=(MinLODSize=128,MaxLODSize=512,LODBias=0,MinMagFilter=linear,MipFilter=point,MipGenSettings=TMGS_Sharpen_0)
TEXTUREGROUP_World=(MinLODSize=256,MaxLODSize=1024,LODBias=0,MinMagFilter=aniso,MipFilter=point)
TEXTUREGROUP_WorldNormalMap=(MinLODSize=256,MaxLODSize=1024,LODBias=0,MinMagFilter=aniso,MipFilter=point,MipGenSettings=TMGS_Sharpen_1)
TEXTUREGROUP_WorldSpecular=(MinLODSize=128,MaxLODSize=512,LODBias=0,MinMagFilter=linear,MipFilter=point,MipGenSettings=TMGS_Sharpen_2)
...

The setting is defined with the key "MipGensettings" and the value is the same name shown in the texture settings (e.g. "TMGS_Sharpen_2"). If not specified the default setting "TMGS_SimpleAverage" is used.

Note: It's advised to have have some mip sharpening (e.g. TMGS_Sharpen4) defined for all color textures. Normal maps or other textures not storing colors might also get more detail on the first sight but it actually might get worse (e.g. distorted surface normals, aliasing speculars). When changing the setting in the ini file all former textures still have the old setting and to bring the project to a consistent state and to see the actual effect of the setting everywhere all texture need to be reexported. Late in the project this can take quite some time and labor.

Details: This option allows to customize the filter kernel size and the weights of the filter kernel that is used during the down sampling operation when generating mip-maps. Mip-map generation happens during importing of the texture and creates a mip-map chain for the texture. The mip-map chain consists of multiple levels of the sample image, each half the resolution of the level before. That data allows the graphic card to render faster when using the lower mips (less memory bandwidth) and also reduces the texture aliasing (shimmering) that becomes visible when having detailed texture in certain distances. The setting has no performance impact at runtime as it only affects the mip-map generation (during importing or when changing the setting). "SimpleAverage" uses a 2x2 kernel size, all "Sharpen..." use a 8x8 kernel and some negative weights to sharpen. "Sharpen0" is not sharpening but still uses the quality down-sampling filter all "Sharpen..." use (4x4 Gaussian kernel). Compared to "SimpleAverage" it appears blurrier but higher quality. When using color content the sharpening is not processing the color channels independently. Then luminance is done as defined and the chrominance (color) information is down-sampled without sharpening (currently 2x2 but 4x4 Gaussian would be possible as well). This avoids a color shift in some extreme cases. Sharpening also helps to improve the DXT compressor as the compression of subtle color shades is limited.

AddressX/Y

Addressing mode of the texture. Either wrapping (TA_Wrap), clamping (TA_Clamp) or mirroring (TA_Mirror).

SRGB

Whether the texture should be gamma (un)corrected or not. Regular diffuse textures and basically anything you author for display as color values should have this set to TRUE. It is usually disabled for cases where the texture color values have a specific meaning and you rely on those values to be that way as they were set e.g. via code. Normal maps should have this set to FALSE as their color values are to be interpreted as a direction and thus should not be gamma corrected.

UnpackMin/UnpackMax

The range the texture gets "unpacked" to. The default is 0..1 which means black corresponds to 0 and white to 1. You can set the max to a higher value if you want overbrightening via the texture. Normal maps require the range to be -1 .. 1 and this is set automatically if you choose the proper compression setting.

CompressionNoAlpha

Whether the alpha channel can be discarded. You want to enable this in case your alpha channel contains data you don't care about as it allows the texture to consume only half the memory required otherwise.

CompressionFullDynamicRange

If enabled, RGBE textures will not be range limit but will use much more memory to store.

DeferCompression

Whether to defer compression till save time to allow faster iteration times when importing/ tweaking textures.

NeverStream

The texture will never be streamed if set. Temporary workaround for engine limitations.

CompressionSettings

TC_Default

Regular texture, diffuse, ...

TC_Displacementmap

Terrain displacement map

TC_Grayscale

Grayscale texture

TC_HighDynamicRange

High dynamic range texture, needs to be imported as RGBE via .float importer.

TC_Normalmap

TC_NormalmapAlpha

TC_NormalmapUncompressed

TC_NormalmapBC5

See the Normal Map Formats document for information normal map formats and compression options.

Filter

The texture filtering mode to use when sampling this texture.

LODGroup

Texture group this texture belongs to for LOD bias

LODBias

LOD bias, basically the number of miplevels to drop before uploading the texture. This value can be negative to compensate for the LODGroup's LOD bias for a particular texture. The LODBias, the LODGroup's LOD bias and the NumCinematicMipLevels are all added together to form a final LOD bias value for the texture. Mip-levels that can't be reached in-game because of its LOD bias are removed from the cooked data on disk by Unreal Frontend to save disk space.

Num Cinematic Mip Levels

Specifies how many of the highest-resolution mip levels should be reserved for cinematic usage - when the texture is forcibly streamed in with cinematic quality (see the StreamInTextures Kismet action).

While the game is running normally, this property behaves just like a regular LOD bias: A value of 1 reduces the texture's in-game resolution by one mip-level. However, when the StreamInTextures Kismet action is activated and the corresponding texture group is set to cinematic quality, the cinematic high-resolution mip levels are streamed in.

NumCinematicMipLevels.png

SourceFilePath

Path resource was imported from.

SourceFileTimestamp

Time resource was imported.

Other actions


Reimport

This re-imports the texture from the source file on disk (if it can be found, otherwise a dialog will pop up asking for the texture location). This action also enables the 'Defer Compression' option, to allow faster iteration times when importing / tweaking textures.

Compress Now

This option is only available on textures that were loaded with 'Defer Compression' enabled. It will perform the compression now, and update the texture preview, allowing compression artifacts to be quickly visualized. This option is also available from the context menu in the Content Browser when textures are selected.