I love the smell of UnrealEd crashing in the morning. – tarquin
Legacy:Texture
Texture is further down the class tree in UT2003 than in previous versions of the engine – see Texture (UT) for those.
Contents
Properties
Texture
- Material Detail
- Detail material to apply.
- float DetailScale
- Scales the detail material.
- ELODSet LODSet
- A level of detail set this texture is associated with.
- int NormalLOD
- Palette Palette
- The texture's palette. Only used if the texture actually is an 8 bit palettized texture.
Animation
- Texture AnimNext
- Next texture in an animated texture sequence.
- float MaxFrameRate
- float MinFrameRate
- Frame rate for animated textures. These two properties specify the range of possible frame rates the engine can choose from; it attempts to automatically select an animation frame rate to minimize aliasing artefacts which lead to the effect of a texture animation not looking smooth. (If you want to enforce a particular frame rate, set both properties to the same value.) If set to zero, the animation is played with the user's game frame rate.
- byte PrimeCount
- Number of frames that are pre-rendered before the texture is displayed the first time; that's useful for dynamic textures that need to "build up" at startup (FireTextures, for instance).
Quality
- bool bHighColorQuality (private)
- High color quality hint.
- bool bHighTextureQuality (private)
- High texture quality hint.
Surface
- bool bAlphaTexture
- Set this if your texture has a specific alpha channel, to allow that channel to be used for transparency
- bool bMasked
- Set this if your texture is a Masked texture (8-bit, one palette channel set for Mask)
- bool bTwoSided
- Set this for a Two-Sided texture (is there an explanation somewhere what this means?)
Texture
- UClampMode
- Controls whether texture softening should go wrap around the textures horizontal edges
- VClampMode
- Same for vertical
That leaves us the question: What are UClamp and VClamp? Maybe they're there so that if you stretch the texture, you can set the size it's softened as?
Or maybe... this is more likely... if you have a texture with multiple images, like GUI Icons or particles, you can set the edge size of each individual image. That way the images don't bleed on each other.
One thing U/V Clamp modes are really useful for is preventing wrapping, such as with projected textures, and I think that's nice to be able to turn on/off (like when #exec importing textures into a package for use as decals and such, eg UCLAMPMODE=CLAMP VCLAMPMODE=CLAMP in #exec statements and MyTextureName.UCLAMPMODE=TC_CLAMP in script).
Hidden
- __LastUpdateTime[2] (const, transient)
- float Accumulator
- Texture AnimCurrent (transient)
- bool bHasComp (const, editconst, private)
- !!OLDVER Whether a compressed version exists.
- bool bParametric (private)
- Texture data need not be stored.
- bool bRealtime (private)
- Texture changes in realtime.
- bool bRealtimeChanged (private, transient)
- Changed since last render.
- ETextureFormat CompFormat (const, editconst)
- !!OLDVER
- int InternalTime[2] (const)
- color MaxColor (const)
- int MaxLOD (transient)
- int MinLOD
- array<int> Mips (private, native, const)
- color MipZero (const)
- byte PrimeCurrent (transient)
- byte PS2FirstMip
- byte PS2NumMips
- These "PS2" bytes were crammed into UTexture's alignment padding, but weren't mentioned here. DO NOT USE THESE IN UNREALSCRIPT UNLESS YOU KNOW WHAT YOU'RE DOING! (I guess.) –ryan.
- pointer RenderInterface (const, transient)
Deprecated Properties
- Texture DetailTexture
- Detail texture to apply.
- Texture EnvironmentMap
- Environment map for this texture
- EEnvMapTransformType EnvMapTransformType
- float Specular
- Specular lighting coefficient.
Enums
EEnvMapTransformType
- EMTT_ViewSpace
- EMTT_WorldSpace
- EMTT_LightSpace
ELODSet
- LODSET_None
- LODSET_World
- LODSET_PlayerSkin
- LODSET_WeaponSkin
- LODSET_Terrain
- LODSET_Interface
- Appears to remove low LOD mips, as the interface will always be high detail
- LODSET_RenderMap
- LODSET_Lightmap