#Colors in textures look bland and desaturated

37 messages · Page 1 of 1 (latest)

cedar needle
#

I'm trying to replicate the look of https://github.com/NickToony/gd-retroterrain Godot Retro Terrain, but in Bevy, as I like how it looks.

Deployed here: https://jurisk.github.io/train-simulator-pages/ (updated from CI/CD, so may have a non-working / different version at the point you are reading this)

I've reused their textures, but it doesn't look close.

The textures look bland and desaturated, while the Godot example has them very lively.

I looked at the color spaces (tried both sRGB settings, for example), and played around with camera illumination, as well as perceptual_roughness of the material, but still it's not right.

Could it be that the PBR StandardMaterial shaders are expecting linear colors while the JPEG I use has sRGB?

What else could be wrong?

(mine on the left, Godot example on the right)

rustic ferry
#

I like how easy you've made it to help out here 🙂

#

Try playing with the Tonemapping on the camera

#

And reflectance on the material should probably be 0

cedar needle
#

Thanks, I will try it out!

rustic ferry
#

No problem!

#

This is the best I managed, I also increased the ambient light

#

(not sure about the sRGB thing btw, hoping someone else chimes in on that)

cedar needle
#

Which Tonemapping do you think worked the best?

rustic ferry
#

For that screenshot I used None and increased the saturation (under ColorGrading) a little bit as well

#

Maybe the saturation increase had more impact than the tonemapping actually

rustic ferry
#

Btw maybe you know already, but if you want to get rid of how noisy the texture is you need to generate mipmaps

cedar needle
#

Oh, thanks, I hadn't figured it out yet. I actually thought to try anti-aliasing first!

#

The thing about mipmapping is that I don't see where the Godot example does it... But when zooming out it looks flat green basically, no texture variation seen at all.

rustic ferry
#

Godot probably generates the mipmaps automatically, it's a fairly standard feature for game engines

#

The readme is worth reading though

#

Actually, with the CompressedImageSaver mentioned in there it should be possible... but I couldn't figure out how to get it to work last time I tried so I just generated them manually

cedar needle
#

I managed to find that Godot asset .meta file has a setting for generating mipmaps, and that's used in the example.

#

Yes, indeed, I should try using https://bevyengine.org/news/bevy-0-12/#compressedimagesaver... Though for 0.12 they say:

One notable exception: we still need to make a few changes before it can run on the web, but it was built with web support in mind.

I wonder if it's fixed / getting fixed soon.

cedar needle
#

OK, so I got Mimmapping working and it looks a lot nicer!

rustic ferry
#

Awesome! Make sure to post in #showcase one day

#

Someone should probably make a github issue about CompressedImageSaver not working on web..

cedar needle
#

I think I can try to publish non-mipmapped as WASM and only support mipmapping for the native version for now.

Though not sure how to do that most effectively, opened another question:

#1246420992130158642 message

rustic ferry
cedar needle
rustic ferry
#

For sure, I'll take a look if I have any examples

#

Ah someone is already typing

cedar needle
#

What software is generally used to generate mipmaps (and also texture atlases)? Because actually I could merge 4 terrain textures into a texture atlas externally...

#

Because for whatever reason my WASM shader runs out of samplers (limit is 16), despite me only having 4 textures + samplers.

#

I'm hoping it may help...

rustic ferry
#

These can both generate mipmaps

#

Not sure about texture atlases

cedar needle
#

Thank you!