Explorar o código

Fix alpha greater than 1 for decal

ShiroSmith %!s(int64=6) %!d(string=hai) anos
pai
achega
4ec0e44190
Modificáronse 1 ficheiros con 3 adicións e 2 borrados
  1. 3 2
      h3d/shader/pbr/VolumeDecal.hx

+ 3 - 2
h3d/shader/pbr/VolumeDecal.hx

@@ -70,8 +70,9 @@ class DecalOverlay extends hxsl.Shader {
 				discard;
 				discard;
 
 
 			var color = colorTexture.get(calculatedUV);
 			var color = colorTexture.get(calculatedUV);
-			pixelColor.rgb *= color.rgb + color.rgb * emissive;
-			pixelColor.a = max(max(pixelColor.r, pixelColor.g), pixelColor.b) * fadeFactor;
+			pixelColor.rgb *= color.rgb;
+			pixelColor.rgb += pixelColor.rgb * emissive;
+			pixelColor.a = clamp(max(max(pixelColor.r, pixelColor.g), pixelColor.b), 0, 1) * fadeFactor;
 		}
 		}
 	}
 	}