4.6, new attack, enemy spawning, shaders, bunch of stuff
This commit is contained in:
parent
e08e3ebb13
commit
19517a3176
84 changed files with 13348 additions and 91399 deletions
30
shaders/space.gdshader
Normal file
30
shaders/space.gdshader
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
shader_type canvas_item;
|
||||
|
||||
// The color you want to replace (e.g., your #325512 background)
|
||||
uniform vec4 key_color : source_color = vec4(0.196, 0.333, 0.071, 1.0);
|
||||
// How close the color needs to be to match (0.01 to 0.1 is usually best)
|
||||
uniform float sensitivity : hint_range(0.0, 1.0) = 0.05;
|
||||
// Read the screen behind this shader
|
||||
uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, filter_nearest;
|
||||
|
||||
void fragment() {
|
||||
// 1. Get the original color of the screen at this position
|
||||
vec4 screen_color = texture(screen_texture, SCREEN_UV);
|
||||
|
||||
// 2. Calculate the difference between the screen pixel and our target color
|
||||
// We use the distance formula in 3D space:
|
||||
// d = sqrt((r1-r2)^2 + (g1-g2)^2 + (b1-b2)^2)
|
||||
float diff = distance(screen_color.rgb, key_color.rgb);
|
||||
|
||||
if (diff <= sensitivity) {
|
||||
// --- START YOUR EFFECT HERE ---
|
||||
// Example: Making it pulse red
|
||||
vec3 effect = screen_color.rgb + vec3(sin(TIME) * 0.5, 0.0, 0.0);
|
||||
|
||||
COLOR = vec4(effect, screen_color.a);
|
||||
// --- END YOUR EFFECT HERE ---
|
||||
} else {
|
||||
// If it's NOT the target color, draw the screen exactly as it is
|
||||
COLOR = screen_color;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue