Commit Graph

75 Commits

Author SHA1 Message Date
charles bloom
dabdaeda09 nop just comment cleanups
#rb none
#preflight none

[CL 20284987 by charles bloom in ue5-main branch]
2022-05-19 15:04:56 -04:00
charles bloom
d96ed2d532 TiffImageWrapper fix importing floating point gray images as integer
add support for F32 float import without conversion
fix incorrect quantizer in color conversion

#rb fabian.giesen
#preflight 627461351e4246d26acdde55

[CL 20073801 by charles bloom in ue5-main branch]
2022-05-06 07:06:42 -04:00
charles bloom
b180322da2 PngImageWrapper detect unsupported formats and return failure rather than crash
#rb none
#preflight none

[CL 20067271 by charles bloom in ue5-main branch]
2022-05-05 19:36:44 -04:00
charles bloom
578f1d4048 Add TSF_R32F single channel float texture source format
#preflight 6272ecc3e73769b67fe88db9
#rb dan.thompson,fabian.giesen

[CL 20064522 by charles bloom in ue5-main branch]
2022-05-05 16:58:24 -04:00
charles bloom
838dacf67f EditorFactories cleanup some todo marks
#preflight 6250cd0d59286815c230b127
#rb none

[CL 19699094 by charles bloom in ue5-main branch]
2022-04-08 20:10:09 -04:00
charles bloom
65e8951b66 remove imagewrapper srgb todo notes and comment to clarify existing behavior
#rb none
#preflight 62421591292f228e09d5a8b1

[CL 19532530 by charles bloom in ue5-main branch]
2022-03-28 16:18:22 -04:00
charles bloom
80719ff588 fix ImageWrapper Mac compile?
#rb none
#preflight none

[CL 19528640 by charles bloom in ue5-main branch]
2022-03-28 12:04:12 -04:00
charles bloom
bbc36d4e36 ImageWrapper clean up duplicate variables
remove unsupported row stride and check it is tight packed as expected

#preflight 6241c305a67e4e1ab71ea308
#rb none
#fyi julien.stjean

[CL 19527833 by charles bloom in ue5-main branch]
2022-03-28 11:20:27 -04:00
charles bloom
f4b6147be1 fix missing copyright text
#rb none
#preflight none

[CL 19503895 by charles bloom in ue5-main branch]
2022-03-24 18:22:54 -04:00
charles bloom
2dc533f46d DDS image wrapper
allows load/save of only 2d DDS images through the generic imagewrappers apis
can be used with screenshot to dds output for example

#preflight 623cd55d9f11d3c7394618e6
#rb fabian.giesen

[CL 19502395 by charles bloom in ue5-main branch]
2022-03-24 16:47:03 -04:00
charles bloom
25bc80811e ImageWrapper: remove unused animation frame functions
were marked deprecated in previous commit

#rb none
#preflight none

[CL 19407262 by charles bloom in ue5-main branch]
2022-03-16 12:32:59 -04:00
charles bloom
04ffabc485 ImageWrapper and import/export refactor
FImage is now the standard preferred type for a bag of pixels
FImageView can point at pixels without owning an allocation
ERawImageFormat (FImage) converts to ETextureSourceFormat
FImageUtils provides generic load/save and get/set from FImage
major cleanup in the ImageWrappers
new preferred API is through ImageWrapperModule Compress/Decompress
SetRaw/GetRaw functions cleaned up to not have undefined behavior on unexpected formats
ImageWrapper output added for HDR,BMP,TGA
RGBA32F format added and supported throughout import/export
EditorFactories import/export made more generic, most image types handled the same way using FImage now
Deprecate old TSF RGBA order pixel formats
Fix many crashes or bad handling of unusual pixel formats
Pixel access functions should be used instead of switches on pixel type

#preflight 6230ade7e65a7e65d68a187c
#rb julien.stjean,martins.mozeiko,dan.thompson,fabian.giesen

[CL 19397199 by charles bloom in ue5-main branch]
2022-03-15 18:29:37 -04:00
julien stjean
99239ba819 Fixed an undefined behavior caused by a stack variable being use after the end of its scope.
#jira UE-144620
#preflight 622148262c722ee170df140c
#lockdown Simon.Tourangeau

#ROBOMERGE-AUTHOR: julien.stjean
#ROBOMERGE-SOURCE: CL 19267937 in //UE5/Release-5.0/... via CL 19268121
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)

[CL 19270643 by julien stjean in ue5-main branch]
2022-03-04 13:39:15 -05:00
swarm
eea09b206f LibTiff for linux.
Unfortunatly it doesn't support the old jpeg format yet. Not sure why currently, but modern tiff encoded using jpeg are fully supported.

#rb Alexis.Matte
#preflight 61a52da9c3287aab277a80d5

#ROBOMERGE-AUTHOR: swarm
#ROBOMERGE-SOURCE: CL 18314926 in //UE5/Release-5.0/... via CL 18315830
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18316193 by swarm in ue5-release-engine-test branch]
2021-11-29 16:27:35 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
aurel cordonnier
69fe095547 Merge from Release-Engine-Staging @ 17636544 to Release-Engine-Test
This represents UE4/Main @17638339 and Dev-PerfTest @17636504

[CL 17638842 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-27 19:54:25 -04:00
paul chipchase
4d1f50ce05 Some minor clean ups for the WITH_UNREALPNG/WITH_UNREALJPEG code paths in ImageWrapper.
#rb Mark.Lintott
#rnx
#preflight 614040873aa82d00013a13ab

- When libjpeg-turbo is enabled we now disable libJPG, before we were including both and relying on libJPG being stripped out.
- Fixed IcoImageWrapper.cpp to compile if WITH_UNREALPNG is 0.
- Cleaned up code comments around enabling libjpeg-turbo with a reminder to investigate the exe size increase if anyone tries to enable it on a console platform.

#ROBOMERGE-AUTHOR: paul.chipchase
#ROBOMERGE-SOURCE: CL 17502250 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17502312 by paul chipchase in ue5-release-engine-test branch]
2021-09-14 05:42:35 -04:00
rolando caloca
f6cd88c157 UE5 - Remove platform
#rb Steve.Smith
[FYI] Jules.Blok, Ryan.Durand, Ben.Marsh

#ROBOMERGE-SOURCE: CL 17295935 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v861-17282326)

[CL 17295945 by rolando caloca in ue5-release-engine-test branch]
2021-08-24 19:28:38 -04:00
zahra nikbakht
8f27bfa7f6 - Custom thumbnail for Widget blueprints #RB patrick.boutot #jira ue-118803
#preflight 610a9c562b002800016b5e53

#ROBOMERGE-SOURCE: CL 17052085 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v850-17047176)

[CL 17052094 by zahra nikbakht in ue5-release-engine-test branch]
2021-08-04 11:18:57 -04:00
charles bloom
4106e8423a Add OodlePNGz0 option for Texture asset compression
fix handling of Uncompressed Quality in JPEG image wrapper

#rb dan.thompson

#ROBOMERGE-SOURCE: CL 17020407 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v839-17012307)

[CL 17020411 by charles bloom in ue5-release-engine-test branch]
2021-08-02 16:50:21 -04:00
alexander suvorov
9283f3f96e Add full support for 32-bit float EXR image channels.
#rb Julien.StJean, charles.bloom

[CL 16454318 by alexander suvorov in ue5-main branch]
2021-05-25 15:01:03 -04:00
alexander suvorov
5ac2bda0f0 Avoid buffer overflow when using JPEG compression for small images.
#rb charles.bloom

[CL 16379865 by alexander suvorov in ue5-main branch]
2021-05-18 21:18:29 -04:00
Julien StJean
50693382d9 Moving HDR loader from runtime engine to imagewrapper.
Adding support of hdr to interchange those are now imported as standart 2d Texture.

#jira UETOOL-3244
#rb Alexis.Matte

[CL 16347572 by Julien StJean in ue5-main branch]
2021-05-17 08:44:27 -04:00
alexander suvorov
9ae202b0ca Implement image dump functionality for Oodle texture compression.
#rb charles.bloom

[CL 16319306 by alexander suvorov in ue5-main branch]
2021-05-13 17:19:11 -04:00
Julien StJean
547c7f160d Optimisation to the legacy texture import and improvement to texture wrapper
Minor change to FImageWrapperBase. GetRaw and GetCompressed now consume the array with the same name instead of having to do a copy of it.
I changed the api IImageWrapper::GetCompressed to return a TArray64<uint8> instead of returning a const TArray64<uint8>&.
Added the format RGBAF to the struct ERGBFormat. Changed the engine code using the EXR image wrapper to reflect that.
The EXR image wrapper now avoid doing an unessary copy of the compressed image when calling compress.

Improvement to the performence of the function UTextureFactory::ImportImage. We now use the magic bytes of the file for certains format to skip some tests.

Here is some performance metrics I captured on my desktop (6 core, 12 threads XEON)

Importing a folder of tiff files (22 files, 4.16 GB Total)
Before: 66.152738 seconds
After: 43.609245 seconds

#jira UEENT-3822
#rb Alexis.Matte

[CL 16128765 by Julien StJean in ue5-main branch]
2021-04-27 11:59:02 -04:00