pow22 should old be used as a source gamma
dest gamma should always be srgb or linear
#preflight 62432a61df7d23dbfeeb57bc
#rb none
[CL 19543713 by charles bloom in ue5-main branch]
also allow MaxTextureSize on non-pow2
no longer force TMGS_NoMipMaps on non-pow2
#preflight 6241f2badc6183e3f5d32332
#rb fabian.giesen
[CL 19530862 by charles bloom in ue5-main branch]
turns off mip maps for nonpow2 cubemaps
fixes check importing nonpow2 cubemaps
#preflight 623e6bfb6776a17c5b01e82f
#rb fabian.giesen
[CL 19520871 by charles bloom in ue5-main branch]
Wasn't doing anything useful
It actually converted any non-zero alpha to full opaque
almost the opposite of what it claimed to do
Simplify the option set by removing useless options rather than fix it
#preflight 620bb7ed4353dc61c7f5c771
#rb dan.thompson,fabian.giesen
[CL 19005593 by charles bloom in ue5-main branch]
AlphaCoverageThresholds was accidentally enabled for all textures with thresholds = {0,0,0,1}
add new Texture bool bDoScaleMipsForAlphaCoverage
to make toggling coverage processing very clear
on old Textures that don't have the bDoScaleMipsForAlphaCoverage field, we can infer the correct value except in the case that threshold = {0,0,0,1} , in that case it's impossible to tell if it's wanted or not. There we look up a config value "EnableLegacyAlphaCoverageThresholdScaling"
Current config has EnableLegacyAlphaCoverageThresholdScaling=1
so the legacy bad behavior is maintained
#rb fabian.giesen,julien.stjean
#preflight 6205c4050d0c8cd8aba6dd9d
[CL 18952713 by charles bloom in ue5-main branch]
not used and should not be used
clean up some todo comments in TextureFormatOodle
#preflight 61ba4ca5055f3013459c0a02
#rb none
#ROBOMERGE-AUTHOR: charles.bloom
#ROBOMERGE-SOURCE: CL 18471288 in //UE5/Release-5.0/... via CL 18471293
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18471295 by charles bloom in ue5-release-engine-test branch]
Texture uasset stores OodleTextureSdkVersion to use
legacy assets load with None
new textures automatically set version to latest
allows updating Oodle Texture Sdk without creating patches
new prefs:
[AlternateTextureCompression]
TextureCompressionFormatWithVersion
OodleTextureSdkVersionToUseIfNone
#rb dan.thompson,devin.doucette
#ROBOMERGE-AUTHOR: charles.bloom
#ROBOMERGE-SOURCE: CL 18456277 in //UE5/Release-5.0/... via CL 18456284
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v898-18417669)
[CL 18456295 by charles bloom in ue5-release-engine-test branch]
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035
[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485
[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
stop using "with editor" to mean "fast texture encode"
#rb devin.doucette,dan.thompson
#ROBOMERGE-SOURCE: CL 17205139 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)
[CL 17205157 by charles bloom in ue5-release-engine-test branch]
-Add mechanism for ITextureFormat to have a generic and private "FormatSettings" block that can be global, but also exported with a texture build action and applied when a texture build is executed remotely. Also ensure that ChildTextureFormat is able to split and store/read the format settings for Child & Base format as separate sub-items.
-Allow the PS5TextureBuildWorker to compile in Oodle if the plugin is present and enabled.
#rb charles.bloom
[CL 16406838 by Zousar Shaker in ue5-main branch]
make optional different level and rdo setting for in-editor / not-in-editor
pass through in-editor platform info in texture build setting
remove the bEnableInEditor from AlternateTexture , we want Oodle always on
#rb josh.adams, danny.couture
[CL 16081013 by charles bloom in ue5-main branch]
This has a single use case: We build streaming virtual textures from runtime virtual textures and we want to ensure the format doesn't change just because the alpha channel is all 1.
#jira none
#rb danny.couture
[CL 15275121 by Jeremy Moore in ue5-main branch]
Can be overriden per-platform, for a specifc texture or texture group.
Downscaling will keep texure size divisible by 4 so they can still be compressed
#rb chris.bunner
#ROBOMERGE-SOURCE: CL 12400453 via CL 12400465 via CL 12400467
#ROBOMERGE-BOT: (v671-12333473)
[CL 12402238 by dmitriy dyomin in Release-Engine-Staging branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870584 by ryan durand in Main branch]
- An additional bit in the FTexturePlatformData next to the Cubemap bit is used to indicate whether the structure contains non-default OptData. Contents of the OptData field is only serialized when that bit is set.
- Platforms which do no make use of OptData will automatically not have that data in their cooked byte stream, as the values will remain default. Platform that do set those values will have the data included and the bit set.
#rb Paul.Chipchase
#jira UE-84435
#lockdown nick.penwarden
#ROBOMERGE-SOURCE: CL 10334591 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v594-10333955)
[CL 10334594 by luke thatcher in Main branch]
Platforms that do need the additional members should override FPlatformProperties::RequiresOptTextureData() to return true.
#rb Rolando.Caloca, Uriel.Doyon
#jira none
#ROBOMERGE-SOURCE: CL 9835488 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v546-9757112)
[CL 9835503 by luke thatcher in Main branch]