I agree with the observations of Unreal. The problem, though, has me thinking of how Unreal utilizes texture space by default, which could also be how UVs are processing too. Basically, it starts in tangent space. UE’s coordinate system is different from certain external apps too, such as the forward-facing (default camera facing) axis is positive X in Unreal, while in other apps it is positive or negative Y. It may not seem it’s a problem, as 3D models look correct for some imports and not for others, all with the same reference coordinate systems being used between the programs. However, it depends on the mesh and material / texture if those also get imported and not made in Unreal’s material editor. Blender’s export ‘pipeline’ has a default of Y up (vertical, which is Z in UE) and -Z forward. In essence, when exporting try to set it to Unreal’s coordinate space before import to Unreal, or IWO in the external program. Try to not rely on UE’s import options for transforming to UE coordinate system. UV generation or interpretation by the engine uses the coordinate system in the resident app (the one used to generate or interpret UVs), so a model with UVs and textures applied is getting re-interpreted in UE coordinate space…which is tangent space by default for materials. Someone in the forum once told me normals don’t have anything to do with the UVs. This is not always the case. It’s essential to UV generation when rendering textures on a mesh too. Ray tracing is performed by referencing the normals in different ways.
Sorry about that diatribe, but it has to be correlated with coordinate systems that are different between applications. I’m not an expert, yet I see this kind of problem often, and encounter similar issues too. It’s even occurred on meshes and for textures that are not imported to Unreal, and are in the starter files. If there’s one suggestion besides trying to set the coordinate references correctly from export to import, it would be try different approaches even if one appears to be inconsistent with the other. In an example with Blender, change Blender’s export coordinate reference to +X forward and +Z up, and in UE during import, disable the ‘transfer to UE coordinate system’ option. Then, if it doesn’t work, or something is off, try it again with the UE option enabled. Additionally, try changing scale in the external app to be the scale of UE, and import without enabling UE scale in the import dialog. If it doesn’t work to get the texture properly applied to all sides, then enable UE scale of the same exported file. Then try it in the external app not changing to UE scale, and enable the transform to UE scale option in UE import…etc.