Add resolution-independent pixelation
This commit is contained in:
parent
46175ee405
commit
6f51f91324
10 changed files with 220 additions and 33 deletions
15
main/world_pixelation_postprocess.gdshader
Normal file
15
main/world_pixelation_postprocess.gdshader
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
shader_type canvas_item;
|
||||
render_mode unshaded;
|
||||
|
||||
uniform sampler2D screen_texture
|
||||
: hint_screen_texture, filter_nearest, repeat_disable;
|
||||
uniform vec2 logical_grid_size = vec2(640.0, 360.0);
|
||||
|
||||
|
||||
void fragment() {
|
||||
vec2 safe_grid = max(logical_grid_size, vec2(1.0));
|
||||
vec2 snapped_uv = (
|
||||
floor(SCREEN_UV * safe_grid) + vec2(0.5)
|
||||
) / safe_grid;
|
||||
COLOR = texture(screen_texture, snapped_uv);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue