Tested cooked build diff for sanity as this should only ever affect in-memory editor values.
#jira UE-149124
#rb fabian.giesen
[CL 31997496 by dan thompson in ue5-main branch]
also note that the 565 and 555 color conversions are wrong but do not change them
output unchanged, no DDC key bump
#rb fabian.giesen
[CL 31813745 by charles bloom in ue5-main branch]
change FImage passed to TextureFormat to be const, it must not be changed becausing hashing is running threaded
remove early frees of intermediate image; this increases peak memory use
#preflight https://horde.devtools.epicgames.com/job/643ff4a3090323f9a3f7695e
#rb dan.thompson
[CL 25116608 by charles bloom in ue5-main branch]
This also fixes the missing include path for TextureFormat.Build.cs
#rb fabian.giesen
#rb charles.bloom
#preflight 6421fa27974dfaa53cb188e5
[CL 24808879 by Dan Thompson in ue5-main branch]
#fyi Dan.Thompson
Original CL Desc
-----------------------------------------------------------------
Plumb the mip layout down to the child texture ddc key versions as certain child formats need to know mip dimensions in order to know if aspects of the build affect the textures.
#rb fabian.giesen
#rb charles.bloom
#preflight 641378f03f3d31c94a2e86b5
#preflight 64149d297d1280ffe750d78e
[CL 24691763 by Dan Thompson in ue5-main branch]
Certain platforms that tile textures will tile non pow2 textures with mips different than non pow2 textures without mips, so we need to plumb down information about the mip chain to the tiling texture formats.
#rb fabian.giesen
#preflight 64068553aa00423335f30765
[CL 24546549 by Dan Thompson in ue5-main branch]
to expose GPU texture formats for R32F and RGBA32F
PF_A32B32G32R32F
PF_R32_FLOAT
OpenGL ES platforms do not support F32 with filtering so must convert to F16 unless the mip filter is set to nearest
#preflight 627a822810766ef8c1fa0b07
#rb Dmitriy.Dyomin,fabian.giesen
[CL 20125675 by charles bloom in ue5-main branch]
fix RHI upload of textures that are multiple of 4 in top mip but not in lower mips
dont pad CompressedImage sizes, store true size
clean up Texture size limits and VT conditions
better default settings for texture import
clean up initialization order of TextureFormatManagerModule
#preflight 6250814a11261bc7b23d8f4b
#rb fabian.giesen,julien.stjean
[CL 19693287 by charles bloom in ue5-main branch]
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]
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971
[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
The endian of BGR555A1 texture is troublesome on Android platform, because Opengl ES doesn't support GL_UNSIGNED_SHORT_1_5_5_5_REV texture format, meanwhile VK_FORMAT_R5G5B5A1_UNORM_PACK16 is not supported on some Android devices.
#rb Dmitriy.Dyomin
#ROBOMERGE-SOURCE: CL 16966077 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)
[CL 16966080 by yangke li in ue5-release-engine-test branch]
Expand texture build workers to all current platform specific texture formats, or added build functions to the base build worker. Workers are buildable, but not discoverable yet as discovery will be refactored soon to use Target Receipts.
Reduce boilerplate involved in setup of build worker.
#rb devin.doucette
#ROBOMERGE-SOURCE: CL 16853856 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)
[CL 16853877 by zousar shaker in ue5-release-engine-test branch]
This is necessary to support building textures independently of the UTexture, which is required by the new derived data build interface.
#rb Zousar.Shaker
#rnx
#preflight 60cbbb906092ba000158179a
#ROBOMERGE-SOURCE: CL 16714489 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)
[CL 16714496 by devin doucette in ue5-release-engine-test branch]
-Added more metadata to the output of the texture export feature.
-Make FTextureBuildFunction stateless and abstract. Now must be derived to produce an instantiable build function.
-Made PS5TextureFormat, TextureFormatOodle, and TextureFormatUncompressed modules depend on TextureBuild module and implement concrete derivatives of FTextureBuildFunction.
-Made PS5TextureFormat, TextureFormatOodle, and TextureFormatUncompressed modules register their build functions through an IBuildFunctionFactory for the lifetime of the module.
-Removed all public interface for the DerivedDataBuild{Loop, Worker} and have them just use the IBuildFunctionFactory modular feature to find all linked build functions.
#rb devin.doucette
#preflight 60acfb486905a60001c3cd29
[CL 16448407 by Zousar Shaker in ue5-main branch]