Texture Washed Out and Blurry

Hello, I could use some help diagnosing why this texture looks washed out / blurry when in the scene, compared to the source texture.

I tried to disable all settings and effects that could possibly affect this. It’s unlit, and an empty scene with all Post-Process effects turned off, so it should look 1 to 1. Some people have previously suggest boosting up the contrast etc, but I would like to get to the root cause of why this doesn’t look the same as the source texture, rather than doing hacky method to fix it.

Some info:

  • Screenshots of material and texture
  • Auto-exposure and bloom are disabled in Project Settings
  • I tested turning off the tone mapper entirely, and it had little effect.
  • Source image is 8 bit PNG
  • I tested adding Post-Process volume to the scene and changing exposure values, and nothing helped it look similar to the original.
  • Tested disabling AA

Thanks for any assistance

1 Like

Try turning off bloom in the post process.

Thank you, but bloom is disabled in Project Settings, and I have no Post-process volume. I also tried adding one in and disabling bloom there, which did not work as well.

1 Like

And when you turn off Lumen?

Lumen is disabled as well

1 Like

Hmm… pretty hard to troubleshoot at a distance.

At one point with 5, I recall you could turn off something in the project settings, and in a local PP, and it still wouldn’t stop until you did it in the player camera.

It’s not that bad now, but there’s still a bit of inconsistency between all the various modes.

If you can make an empty project with just this in a scene, I’ll take a look, but apart from that, I’m stuck :rofl:

1 Like

I really appreciate your help, I’ll check that out. I actually tested it in an empty project today, and the result was the same (actually worse though, since auto exposure is enabled by default). If you wouldn’t mind I’d love it if you could check it out! (assuming that’s what you were implying)

1 Like

Sure, just give me a link to something I can download and take a look :slight_smile:

1 Like

Awesome!

Here is the (link) to a blank 5.0 project with the texture in an unlit material applied to a plane. It looks worse than even my image in this post, since auto exposure is on by default, but I figured I just wouldn’t touch anything so it doesn’t mess you up. If you would prefer it in a different engine version, let me know and I can swap it. Thank you so much!

1 Like

From your screenshot, it isn’t so obvious if you intended to make the texture appear much brighter compared to texture preview. That’s of course not really possible.

Otherwise, maybe playing with the sRGB setting might have to do with th problem. If I got unreal documentation correctly, the engine works in linear color space and has to convert to and from there whenever image data is to be exchanged with the outside where sRGB-like gamma ramps are typically expected to be implied.

2 Likes

Thank you for the response! I would like the texture appear 1 to 1 in terms of brightness, which is why I set the material to unlit, and disabled auto exposure and other post-process effects. In the imgur link it can be seen how I set up the material, which should make it look the same as the source texture.

sRGB is set to true, and it was created and imported as an 8 bit PNG, so it should be correct. I also tested without sRGB which wouldn’t make sense, which didn’t work as expected

I’m much too new to trying out unreal engine, and so to me it’s not yet all clear what texture asset editor does. It doesn’t really “talk” about what kind of data will be stored in the asset file, and doesn’t mention how data is presented to the gpu, about when color space transforms are actually applied. Then there are material’s texture samplers, which in turn might have some implications about color space transforms. And finally, you’re starting from a blank project, which might not yet have the “return to sRGB” postprocessing setup correctly.

But the problem definetly looks like if it has to do with color space conversion, either on the way into the engine, or the way out to your monitor/screenshots. Here’s how GIMP shows a part of your screenshot with some gamma curve…

1 Like

Thank you for taking the time to help, it’s greatly appreciated!

You’re right, it definitely looks like a conversion issue, but the preview in the texture editor looks exactly like the source image, so I doubt the issue is before import. Thanks for bringing it in GIMP, you’re right, it looks like the gamma is blown out for some reason in unreal. If only I knew why that is lol

Exactly, it looks like the texture image importer/asset editor knows how to interpret the image data. But iit doesn’t know about where/how you intend to use the texture.

The material editor has separate texture samplers for different purposes. One of which is the normal base-color sampler, that might typically be used for in-game 3D meshes. And another sampler type for GUI-color, that propbably has things like sRGB conversion disabled (just a guess, not knowledge). And many more, and for the subset of 2D img samplers, they all do the very same thing.

So maybe the only problem is that you’re throwing your texture into a blank project with no preferences set up.

1 Like

Well I only was testing in a blank project here since it wasn’t working as intended in my full project. In my full project I have most things configured, AA, bloom, post-process volume, exposure, etc. Which it wasn’t working there so I tried disabling everything I could think of in the project, yet the problem still persisted.

Good idea with testing different texture samplers! Although unfortunately I couldn’t find any that fixed the issue. I assume the regular texture sampler is what I want though, since this texture would be applied to an in game 3D mesh.

I’ve tried a similar material setup as you’ve shown in the link using the 3rd person project.

using this texture.

Obviously something appears to go wrong with the tonemapping. But it’s in no way unexpectedly blurry.

Let’s further investigate, wether it’s about texture input or framebuffer treatment.

Thanks so much for investigating further! I tested previously with turning off the tone mapper entirely (again, in a blank project), but could not get any results that were close to the source texture. I saw many threads with people mentioning the tonemapper would cause this, but I’m starting to doubt that they were correct since I turned it off and it didn’t help at all.

In the in-game screenshot you provided, I think the reason it looks so extra blown-out compared to the original image in this post is due to auto exposure, since its enabled by default in new projects. I always disable auto-exposure in project settings, as a personal preference

I’m not a graphics/rendering expert so I’m gonna be honest i know very little about framebuffer, unfortunately :frowning:

Hmn, but I’d expect auto-exposure to make up a global, frame-wide constant, linear factor, just like exposure time in foto.

For now, I found that it doesn’t seem to have to do with texture encoding:

the 10 rings should be easily (and all similar) distungishable, but the outer ones are hard to see.

Used this material:

So the problem could be caused by treatment of emissive color in the generic material exit node. Haven’t yet focussed on specialized tone-map, and the postprocessing volume in 3rd person example is there but at defaults (almost everthing disabled).

2 Likes

Awesome :+1:

Personally I doubt it would be anything to do with the post-process volume since, I disabled all post-process effects and the issue still remained

Well, but I partially mis- or overinterpreted my own results.

What I said about expected apperance of the rings pretended a gamma funtion that wasn’t there. Corrected to use a gamma of 2.2 it looks like:

But still, the 50% grey point is much to near to center.

1 Like