Emission in Material colors darker part of the texture to green from the distance

Godot Version

Godot Engine 4.3

Question

These ceiling things in my room model have emission property on them from Blender because it’s part of lighting. For some reason dark part of the texture colors green when seen from the distance at specific angles. Why?

Two images showing this behavior:

Is this Godot Engine specific issue? Is this my rendering engine issue (I’ve choosen Mobile Devices rendering for my game)? Should I update to newer version of the Godot Engine?

Bump. This problem is kind of still persists in my project. Anyone got any ideas what is the cause and what is the solution may be?

Is this problem only in the editor

Can you see the same issue while playing the game?

Just checked. Yes, this issue appears even when I am playing the game.

try messing with this setting in Project > Project Settings > (search for mipmap) > then turn it up or down (I don’t know specificly)

If that doesn’t work it might be compression from the import of the texture to change:

Try these things ONE by ONE, not all at once and see if anything fixes the issue

start by clicking the texture in the filesystem,

1 Like

Wow! Thank you so much for helping!

It appears to be changing the Mipmap Bias to the positive values makes the texture more greener even in closer distances.
But when I changed it to negative value ( -1.5 ) it fixed the issue!

I am kind of surprised that the problem was the mipmap bias. Can you please explain why it was the issue?

Anyways, thank you so much!
EDIT: For anyone having similiar issue please scroll down immediately. Changing mipmap bias value may make your other textures look worse than expected. It’s better to disable Mipmap generation completely for the texture in the “Import” settings.

1 Like

One thing to make sure is that all the other textures look fine before you think of it as solved.

If a texture looks wonky with that setting you might just need to disable mipmaping for that specific texture.

It is a quirk of Godot rendering and what mipmapping does that causes this issue.

I don’t know why it is green specifically but the way the gpu receives the data for a dark space beside a emmisive in Godot is causing the color to shift a lot more than it should, in a different rendering engine this quirk might not exist at all or will manifest differently.

You can think of mipmapping like the GPU averaging texture data at a distance to save on computation. Here is a example of what it does:

1 Like

Oh you’re right. I’ve noticed that with mipmap bias -1.5 my office wall textures,
specifically the ones that are on my first screenshots that have normal maps, roughness maps and etc. on them, have more visible darker roughness on them.

With mipmap bias 0 the wall textures are actually smoother and don’t have such hard roughness on them that even it turns black a little.

I guess I will just disable mipmapping for that ceiling texture part for the good.

Turning off the “Mipmaps” → “Generate” option solved the green issue. Thank you so much for helping!

1 Like