Hello.
I’ve created a material that is basically a loading box that I attached to my gun. The material has a texture that fills a square with the help of a angled gradient.
I also created a decal that uses that material and placed it on the gun. So everytime I shoot I send a parameter to the material to empty the square and then after a specific time to refill it. The decal square is emissive color so its looks pretty cool on dark environments.
The problem is actually when the light hits the gun, the gun obviously gets much brighter and the decal is not visible anymore even if it’s emmisive.
Basically I want to avoid scenarios when the gun color and brightness gets really close to the decal color and brightness.
How can I fix this ? Can I sample some pixels from the gun and then change the color of the decal everytime so they are different? I don’t even know how to do that.
Anyone have a better idea ?
This is a real world design problem. Just like how a smartphone screen is hard to read in the sun.
Most of all, your scene is way overexposed. This is causing blown out areas on the hand as well. Reduce your exposure to a more appropriate level, and some of those details may return.
Increase the roughness of that part of your material. Rough materials scatter more light which gives them less highlights from bright lights being reflected. You can also decrease the specular level, although doing so is usually less physically accurate. You may have noticed that glossy TVs or Monitors have worse glare than more matte screens.
Imitate real world sunlight visible screen tech. Mono LCD screens have high visibility in sunlight for example, but don’t look as futuristic.
Make the screen background darker. There’s a reason screens are black IRL.