| 
									
										
										
										
											2024-07-25 05:40:31 +00:00
										 |  |  | shader_type canvas_item; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-13 11:57:10 +00:00
										 |  |  | #include "res://addons/rokojori_action_library/Runtime/Shading/Library/Colors.gdshaderinc" | 
					
						
							|  |  |  | #include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc" | 
					
						
							| 
									
										
										
										
											2024-07-25 05:40:31 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | uniform sampler2D screenTexture: | 
					
						
							|  |  |  |   hint_screen_texture, | 
					
						
							|  |  |  |   repeat_disable, | 
					
						
							|  |  |  |   filter_linear_mipmap; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | uniform sampler2D overlay; | 
					
						
							|  |  |  | uniform float effectStrength: hint_range(0,1) = 1; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void fragment() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   vec4 rgb = texture( screenTexture, UV ); | 
					
						
							|  |  |  |   vec4 originalRGB = rgb; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   vec4 overlayColor = texture( overlay, UV ); | 
					
						
							|  |  |  |   vec4 additiveOverlayColor   = overlayColor + rgb; | 
					
						
							|  |  |  |   vec4 multipliedOverlayColor = overlayColor * rgb; | 
					
						
							| 
									
										
										
										
											2025-01-08 18:46:17 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-07-25 05:40:31 +00:00
										 |  |  |   float overlayBlendType = length( overlayColor.rgb ); | 
					
						
							|  |  |  |   vec4 mixed = mix3_v4( multipliedOverlayColor, rgb, additiveOverlayColor, overlayBlendType ); | 
					
						
							| 
									
										
										
										
											2025-01-08 18:46:17 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   rgb = mixed; | 
					
						
							| 
									
										
										
										
											2024-07-25 05:40:31 +00:00
										 |  |  |   COLOR = mix( originalRGB, mixed, effectStrength ); | 
					
						
							|  |  |  | } |