From 9a28258ed9937770c11ef5794701014c9870abd5 Mon Sep 17 00:00:00 2001 From: Henrique Alves Date: Sun, 19 Apr 2020 19:09:06 -0300 Subject: setting up master to godot 3 --- ...TFrame.png-96837578d803d46c371247267c1fa407.md5 | 3 + ...Frame.png-96837578d803d46c371247267c1fa407.stex | Bin 0 -> 18745 bytes .../icon.png-487276ed1e3a0c39cad0279d744ee560.md5 | 3 + .../icon.png-487276ed1e3a0c39cad0279d744ee560.stex | Bin 0 -> 3546 bytes ...sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 | 3 + ...ample.png-e83d904df67be35a3470a03c20e2b3c2.stex | Bin 0 -> 254998 bytes .../white.png-d8533361663a5f8fe5200e5b5262a62d.md5 | 3 + ...white.png-d8533361663a5f8fe5200e5b5262a62d.stex | Bin 0 -> 198 bytes ...shader.png-9db2b2214c4e6972799a91a8b684c9db.md5 | 3 + ...hader.png-9db2b2214c4e6972799a91a8b684c9db.stex | Bin 0 -> 786286 bytes CRTFrame.png | Bin 0 -> 17559 bytes CRTFrame.png.import | 34 +++ ShaderTestScreen.tscn | 236 +++++++++++++++++++++ default_env.tres | 18 ++ godot2/CRTDisplayShader.shd | Bin 2107 -> 0 bytes godot2/CRTFrame.png | Bin 17559 -> 0 bytes godot2/CRTViewportDisplay/CRT.scn | Bin 3540 -> 0 bytes godot2/CRTViewportDisplay/CRTDisplayShader.shd | Bin 2126 -> 0 bytes godot2/CRTViewportDisplay/CRTFrame.png | Bin 17559 -> 0 bytes godot2/CRTViewportDisplay/white.png | Bin 174 -> 0 bytes godot2/ShaderTestsScreen.scn | Bin 4209 -> 0 bytes godot2/engine.cfg | 5 - godot2/icon.png | Bin 2736 -> 0 bytes godot2/icon.png.flags | 1 - godot2/sample.png | Bin 254953 -> 0 bytes godot2/white.png | Bin 174 -> 0 bytes ...TFrame.png-96837578d803d46c371247267c1fa407.md5 | 3 - ...Frame.png-96837578d803d46c371247267c1fa407.stex | Bin 18745 -> 0 bytes .../icon.png-487276ed1e3a0c39cad0279d744ee560.md5 | 3 - .../icon.png-487276ed1e3a0c39cad0279d744ee560.stex | Bin 3546 -> 0 bytes ...sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 | 3 - ...ample.png-e83d904df67be35a3470a03c20e2b3c2.stex | Bin 254998 -> 0 bytes .../white.png-d8533361663a5f8fe5200e5b5262a62d.md5 | 3 - ...white.png-d8533361663a5f8fe5200e5b5262a62d.stex | Bin 198 -> 0 bytes godot3/CRTFrame.png | Bin 17559 -> 0 bytes godot3/CRTFrame.png.import | 34 --- godot3/ShaderTestScreen.tscn | 236 --------------------- godot3/default_env.tres | 18 -- godot3/icon.png | Bin 3498 -> 0 bytes godot3/icon.png.import | 34 --- godot3/project.godot | 24 --- godot3/sample.png | Bin 254953 -> 0 bytes godot3/sample.png.import | 34 --- godot3/white.png | Bin 174 -> 0 bytes godot3/white.png.import | 34 --- icon.png | Bin 0 -> 3498 bytes icon.png.import | 34 +++ project.godot | 24 +++ sample.png.import | 34 +++ white.png | Bin 0 -> 174 bytes white.png.import | 34 +++ withshader.png.import | 34 +++ 52 files changed, 463 insertions(+), 432 deletions(-) create mode 100644 .import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 create mode 100644 .import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex create mode 100644 .import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 create mode 100644 .import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex create mode 100644 .import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 create mode 100644 .import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex create mode 100644 .import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 create mode 100644 .import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex create mode 100644 .import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.md5 create mode 100644 .import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.stex create mode 100644 CRTFrame.png create mode 100644 CRTFrame.png.import create mode 100644 ShaderTestScreen.tscn create mode 100644 default_env.tres delete mode 100644 godot2/CRTDisplayShader.shd delete mode 100644 godot2/CRTFrame.png delete mode 100644 godot2/CRTViewportDisplay/CRT.scn delete mode 100644 godot2/CRTViewportDisplay/CRTDisplayShader.shd delete mode 100644 godot2/CRTViewportDisplay/CRTFrame.png delete mode 100644 godot2/CRTViewportDisplay/white.png delete mode 100644 godot2/ShaderTestsScreen.scn delete mode 100644 godot2/engine.cfg delete mode 100644 godot2/icon.png delete mode 100644 godot2/icon.png.flags delete mode 100644 godot2/sample.png delete mode 100644 godot2/white.png delete mode 100644 godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 delete mode 100644 godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex delete mode 100644 godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 delete mode 100644 godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex delete mode 100644 godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 delete mode 100644 godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex delete mode 100644 godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 delete mode 100644 godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex delete mode 100644 godot3/CRTFrame.png delete mode 100644 godot3/CRTFrame.png.import delete mode 100644 godot3/ShaderTestScreen.tscn delete mode 100644 godot3/default_env.tres delete mode 100644 godot3/icon.png delete mode 100644 godot3/icon.png.import delete mode 100644 godot3/project.godot delete mode 100644 godot3/sample.png delete mode 100644 godot3/sample.png.import delete mode 100644 godot3/white.png delete mode 100644 godot3/white.png.import create mode 100644 icon.png create mode 100644 icon.png.import create mode 100644 project.godot create mode 100644 sample.png.import create mode 100644 white.png create mode 100644 white.png.import create mode 100644 withshader.png.import diff --git a/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 b/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 new file mode 100644 index 0000000..fd23a82 --- /dev/null +++ b/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 @@ -0,0 +1,3 @@ +source_md5="df84d0e7c378fc804ee71ab344da073a" +dest_md5="ff93b8ffac84374a8b5a1f9fdddc4633" + diff --git a/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex b/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex new file mode 100644 index 0000000..c5c7555 Binary files /dev/null and b/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex differ diff --git a/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 b/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 new file mode 100644 index 0000000..1f3b6a6 --- /dev/null +++ b/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 @@ -0,0 +1,3 @@ +source_md5="ae7e641067601e2184afcade49abd283" +dest_md5="666d00497ab80edb9a199bfa253dc2f5" + diff --git a/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex b/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex new file mode 100644 index 0000000..35d087e Binary files /dev/null and b/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex differ diff --git a/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 b/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 new file mode 100644 index 0000000..e44a2dc --- /dev/null +++ b/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 @@ -0,0 +1,3 @@ +source_md5="03ef0b3e4f811b7b8aeb5aa43211853b" +dest_md5="a97ab23e304573a67635b93f016d376c" + diff --git a/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex b/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex new file mode 100644 index 0000000..bb2cbef Binary files /dev/null and b/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex differ diff --git a/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 b/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 new file mode 100644 index 0000000..8d1ed0a --- /dev/null +++ b/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 @@ -0,0 +1,3 @@ +source_md5="b68844373120b3795a9b80a7922d0c76" +dest_md5="822a4e0b0b5fd90160b4255670a4f4b5" + diff --git a/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex b/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex new file mode 100644 index 0000000..fb1c958 Binary files /dev/null and b/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex differ diff --git a/.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.md5 b/.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.md5 new file mode 100644 index 0000000..a8a5250 --- /dev/null +++ b/.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.md5 @@ -0,0 +1,3 @@ +source_md5="4d9627ea72b879314c9b4ae53ffa976b" +dest_md5="9aa01ac4dba8c9d5eb85cb1c723b8968" + diff --git a/.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.stex b/.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.stex new file mode 100644 index 0000000..1b3968e Binary files /dev/null and b/.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.stex differ diff --git a/CRTFrame.png b/CRTFrame.png new file mode 100644 index 0000000..9c5ca46 Binary files /dev/null and b/CRTFrame.png differ diff --git a/CRTFrame.png.import b/CRTFrame.png.import new file mode 100644 index 0000000..73baf73 --- /dev/null +++ b/CRTFrame.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://CRTFrame.png" +dest_files=[ "res://.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/ShaderTestScreen.tscn b/ShaderTestScreen.tscn new file mode 100644 index 0000000..85f1019 --- /dev/null +++ b/ShaderTestScreen.tscn @@ -0,0 +1,236 @@ +[gd_scene load_steps=12 format=2] + +[ext_resource path="res://sample.png" type="Texture" id=1] +[ext_resource path="res://white.png" type="Texture" id=2] +[ext_resource path="res://CRTFrame.png" type="Texture" id=3] + +[sub_resource type="Shader" id=1] +code = "shader_type canvas_item; + +uniform float BarrelPower =1.1; + +vec2 distort(vec2 p) +{ + + float angle = p.y / p.x; + float theta = atan(p.y,p.x); + float radius = pow(length(p), BarrelPower); + + p.x = radius * cos(theta); + p.y = radius * sin(theta); + + return 0.5 * (p + vec2(1.0,1.0)); +} +void fragment() +{ + +vec2 xy = SCREEN_UV * 2.0; +xy.x -= 1.0; +xy.y -= 1.0; + +float d = length(xy); +if(d < 1.5){ + xy = distort(xy); +} +else{ + xy = SCREEN_UV; +} +COLOR = texture(SCREEN_TEXTURE,xy); +} + + + +" + +[sub_resource type="ShaderMaterial" id=2] +shader = SubResource( 1 ) +shader_param/BarrelPower = 1.1 + +[sub_resource type="Shader" id=3] +code = "shader_type canvas_item; + +uniform float color_bleeding = 0.9; +uniform float bleeding_range = 2; +uniform float screen_width = 1024; +void fragment() +{ + float pixel_size = 1.0/screen_width*bleeding_range; + vec4 color_left = texture(SCREEN_TEXTURE,SCREEN_UV - vec2(pixel_size, 0)); + vec4 current_color = texture(SCREEN_TEXTURE,SCREEN_UV); + current_color = current_color*vec4(color_bleeding,0.5,0.25,1); + color_left = color_left*vec4(0.25,0.5,color_bleeding,1); + COLOR.rgba = (current_color + color_left); +}" + +[sub_resource type="ShaderMaterial" id=4] +shader = SubResource( 3 ) +shader_param/color_bleeding = 0.9 +shader_param/bleeding_range = 2.0 +shader_param/screen_width = 1024.0 + +[sub_resource type="Shader" id=5] +code = "shader_type canvas_item; + +uniform float lines_distance = 4.0; +uniform float pixel_size = 2.0; +uniform float size_screen = 600; +uniform float scanline_alpha = 0.9; +uniform float lines_velocity = 30.0; + +void fragment() +{ + float line_row = floor((SCREEN_UV.y * size_screen/pixel_size) + mod(TIME*lines_velocity, lines_distance)); + + float n = 1.0 - ceil((mod(line_row,lines_distance)/lines_distance)); + +vec4 c = texture(SCREEN_TEXTURE,SCREEN_UV); +c = c - n*c*(1.0 - scanline_alpha); +c.a = 1.0; +COLOR = c; +}" + +[sub_resource type="ShaderMaterial" id=6] +shader = SubResource( 5 ) +shader_param/lines_distance = 4.0 +shader_param/pixel_size = 2.0 +shader_param/size_screen = 600.0 +shader_param/scanline_alpha = 0.9 +shader_param/lines_velocity = 30.0 + +[sub_resource type="Shader" id=7] +code = "shader_type canvas_item; + +uniform float screen_width = 1024; +uniform float screen_height = 600; + +// Curvature +uniform float BarrelPower =1.1; +// Color bleeding +uniform float color_bleeding = 1.2; +uniform float bleeding_range_x = 3; +uniform float bleeding_range_y = 3; +// Scanline +uniform float lines_distance = 4.0; +uniform float scan_size = 2.0; +uniform float scanline_alpha = 0.9; +uniform float lines_velocity = 30.0; +vec2 distort(vec2 p) +{ + + float angle = p.y / p.x; + float theta = atan(p.y,p.x); + float radius = pow(length(p), BarrelPower); + + p.x = radius * cos(theta); + p.y = radius * sin(theta); + + return 0.5 * (p + vec2(1.0,1.0)); +} + +void get_color_bleeding(inout vec4 current_color,inout vec4 color_left){ + + current_color = current_color*vec4(color_bleeding,0.5,0.25,1); + color_left = color_left*vec4(0.25,0.5,color_bleeding,1); +} + +void get_color_scanline(vec2 uv,inout vec4 c,float time){ + float line_row = floor((uv.y * screen_height/scan_size) + mod(time*lines_velocity, lines_distance)); + + float n = 1.0 - ceil((mod(line_row,lines_distance)/lines_distance)); + + c = c - n*c*(1.0 - scanline_alpha); + c.a = 1.0; + +} + +void fragment() +{ + +vec2 xy = SCREEN_UV * 2.0; +xy.x -= 1.0; +xy.y -= 1.0; + +float d = length(xy); +if(d < 1.5){ + xy = distort(xy); +} +else{ + xy = SCREEN_UV; +} + +float pixel_size_x = 1.0/screen_width*bleeding_range_x; +float pixel_size_y = 1.0/screen_height*bleeding_range_y; +vec4 color_left = texture(SCREEN_TEXTURE,xy - vec2(pixel_size_x, pixel_size_y)); +vec4 current_color = texture(SCREEN_TEXTURE,xy); +get_color_bleeding(current_color,color_left); +vec4 c = current_color+color_left; +get_color_scanline(xy,c,TIME); +COLOR = c; + +} +" + +[sub_resource type="ShaderMaterial" id=8] +shader = SubResource( 7 ) +shader_param/screen_width = 1024.0 +shader_param/screen_height = 600.0 +shader_param/BarrelPower = 1.1 +shader_param/color_bleeding = 1.0 +shader_param/bleeding_range_x = 1.0 +shader_param/bleeding_range_y = 1.0 +shader_param/lines_distance = 4.0 +shader_param/scan_size = 2.0 +shader_param/scanline_alpha = 0.9 +shader_param/lines_velocity = 30.0 + +[node name="Control" type="Control"] +margin_right = 40.0 +margin_bottom = 40.0 + +[node name="Sprite" type="Sprite" parent="."] +texture = ExtResource( 1 ) +centered = false + +[node name="Shaders" type="Control" parent="."] +margin_right = 40.0 +margin_bottom = 40.0 + +[node name="Curvature" type="TextureRect" parent="Shaders"] +visible = false +material = SubResource( 2 ) +margin_right = 1024.0 +margin_bottom = 600.0 +texture = ExtResource( 2 ) +expand = true + +[node name="ColorBleeding" type="TextureRect" parent="Shaders"] +visible = false +material = SubResource( 4 ) +margin_right = 1024.0 +margin_bottom = 600.0 +texture = ExtResource( 2 ) +expand = true + +[node name="ScanLine" type="TextureRect" parent="Shaders"] +visible = false +material = SubResource( 6 ) +margin_right = 1024.0 +margin_bottom = 600.0 +texture = ExtResource( 2 ) +expand = true + +[node name="CRT" type="TextureRect" parent="Shaders"] +material = SubResource( 8 ) +margin_right = 1024.0 +margin_bottom = 600.0 +texture = ExtResource( 2 ) +expand = true +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="CRTFrame" type="TextureRect" parent="."] +margin_right = 1082.0 +margin_bottom = 812.0 +rect_scale = Vector2( 0.946396, 0.738916 ) +texture = ExtResource( 3 ) diff --git a/default_env.tres b/default_env.tres new file mode 100644 index 0000000..0f8c712 --- /dev/null +++ b/default_env.tres @@ -0,0 +1,18 @@ +[gd_resource type="Environment" load_steps=2 format=2] + +[sub_resource type="ProceduralSky" id=1] +radiance_size = 4 +sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 ) +sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 ) +sky_curve = 0.25 +ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 ) +ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 ) +ground_curve = 0.01 +sun_energy = 16.0 + +[resource] +background_mode = 2 +background_sky = SubResource( 1 ) +fog_height_min = 0.0 +fog_height_max = 100.0 +ssao_quality = 0 diff --git a/godot2/CRTDisplayShader.shd b/godot2/CRTDisplayShader.shd deleted file mode 100644 index 6b0c8a3..0000000 Binary files a/godot2/CRTDisplayShader.shd and /dev/null differ diff --git a/godot2/CRTFrame.png b/godot2/CRTFrame.png deleted file mode 100644 index 9c5ca46..0000000 Binary files a/godot2/CRTFrame.png and /dev/null differ diff --git a/godot2/CRTViewportDisplay/CRT.scn b/godot2/CRTViewportDisplay/CRT.scn deleted file mode 100644 index caf3a18..0000000 Binary files a/godot2/CRTViewportDisplay/CRT.scn and /dev/null differ diff --git a/godot2/CRTViewportDisplay/CRTDisplayShader.shd b/godot2/CRTViewportDisplay/CRTDisplayShader.shd deleted file mode 100644 index 4ca4ed4..0000000 Binary files a/godot2/CRTViewportDisplay/CRTDisplayShader.shd and /dev/null differ diff --git a/godot2/CRTViewportDisplay/CRTFrame.png b/godot2/CRTViewportDisplay/CRTFrame.png deleted file mode 100644 index 9c5ca46..0000000 Binary files a/godot2/CRTViewportDisplay/CRTFrame.png and /dev/null differ diff --git a/godot2/CRTViewportDisplay/white.png b/godot2/CRTViewportDisplay/white.png deleted file mode 100644 index 573faa3..0000000 Binary files a/godot2/CRTViewportDisplay/white.png and /dev/null differ diff --git a/godot2/ShaderTestsScreen.scn b/godot2/ShaderTestsScreen.scn deleted file mode 100644 index 2624d54..0000000 Binary files a/godot2/ShaderTestsScreen.scn and /dev/null differ diff --git a/godot2/engine.cfg b/godot2/engine.cfg deleted file mode 100644 index 44f4999..0000000 --- a/godot2/engine.cfg +++ /dev/null @@ -1,5 +0,0 @@ -[application] - -name="ShaderTest" -main_scene="res://ShaderTestsScreen.scn" -icon="res://icon.png" diff --git a/godot2/icon.png b/godot2/icon.png deleted file mode 100644 index c019ef6..0000000 Binary files a/godot2/icon.png and /dev/null differ diff --git a/godot2/icon.png.flags b/godot2/icon.png.flags deleted file mode 100644 index 5130fd1..0000000 --- a/godot2/icon.png.flags +++ /dev/null @@ -1 +0,0 @@ -gen_mipmaps=false diff --git a/godot2/sample.png b/godot2/sample.png deleted file mode 100644 index 200fbf8..0000000 Binary files a/godot2/sample.png and /dev/null differ diff --git a/godot2/white.png b/godot2/white.png deleted file mode 100644 index 573faa3..0000000 Binary files a/godot2/white.png and /dev/null differ diff --git a/godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 b/godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 deleted file mode 100644 index fd23a82..0000000 --- a/godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.md5 +++ /dev/null @@ -1,3 +0,0 @@ -source_md5="df84d0e7c378fc804ee71ab344da073a" -dest_md5="ff93b8ffac84374a8b5a1f9fdddc4633" - diff --git a/godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex b/godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex deleted file mode 100644 index c5c7555..0000000 Binary files a/godot3/.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex and /dev/null differ diff --git a/godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 b/godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 deleted file mode 100644 index 1f3b6a6..0000000 --- a/godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 +++ /dev/null @@ -1,3 +0,0 @@ -source_md5="ae7e641067601e2184afcade49abd283" -dest_md5="666d00497ab80edb9a199bfa253dc2f5" - diff --git a/godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex b/godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex deleted file mode 100644 index 35d087e..0000000 Binary files a/godot3/.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex and /dev/null differ diff --git a/godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 b/godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 deleted file mode 100644 index e44a2dc..0000000 --- a/godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.md5 +++ /dev/null @@ -1,3 +0,0 @@ -source_md5="03ef0b3e4f811b7b8aeb5aa43211853b" -dest_md5="a97ab23e304573a67635b93f016d376c" - diff --git a/godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex b/godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex deleted file mode 100644 index bb2cbef..0000000 Binary files a/godot3/.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex and /dev/null differ diff --git a/godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 b/godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 deleted file mode 100644 index 8d1ed0a..0000000 --- a/godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.md5 +++ /dev/null @@ -1,3 +0,0 @@ -source_md5="b68844373120b3795a9b80a7922d0c76" -dest_md5="822a4e0b0b5fd90160b4255670a4f4b5" - diff --git a/godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex b/godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex deleted file mode 100644 index fb1c958..0000000 Binary files a/godot3/.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex and /dev/null differ diff --git a/godot3/CRTFrame.png b/godot3/CRTFrame.png deleted file mode 100644 index 9c5ca46..0000000 Binary files a/godot3/CRTFrame.png and /dev/null differ diff --git a/godot3/CRTFrame.png.import b/godot3/CRTFrame.png.import deleted file mode 100644 index 73baf73..0000000 --- a/godot3/CRTFrame.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://CRTFrame.png" -dest_files=[ "res://.import/CRTFrame.png-96837578d803d46c371247267c1fa407.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/godot3/ShaderTestScreen.tscn b/godot3/ShaderTestScreen.tscn deleted file mode 100644 index caee966..0000000 --- a/godot3/ShaderTestScreen.tscn +++ /dev/null @@ -1,236 +0,0 @@ -[gd_scene load_steps=12 format=2] - -[ext_resource path="res://sample.png" type="Texture" id=1] -[ext_resource path="res://white.png" type="Texture" id=2] -[ext_resource path="res://CRTFrame.png" type="Texture" id=3] - -[sub_resource type="Shader" id=1] -code = "shader_type canvas_item; - -uniform float BarrelPower =1.1; - -vec2 distort(vec2 p) -{ - - float angle = p.y / p.x; - float theta = atan(p.y,p.x); - float radius = pow(length(p), BarrelPower); - - p.x = radius * cos(theta); - p.y = radius * sin(theta); - - return 0.5 * (p + vec2(1.0,1.0)); -} -void fragment() -{ - -vec2 xy = SCREEN_UV * 2.0; -xy.x -= 1.0; -xy.y -= 1.0; - -float d = length(xy); -if(d < 1.5){ - xy = distort(xy); -} -else{ - xy = SCREEN_UV; -} -COLOR = texture(SCREEN_TEXTURE,xy); -} - - - -" - -[sub_resource type="ShaderMaterial" id=2] -shader = SubResource( 1 ) -shader_param/BarrelPower = 1.1 - -[sub_resource type="Shader" id=3] -code = "shader_type canvas_item; - -uniform float color_bleeding = 0.9; -uniform float bleeding_range = 2; -uniform float screen_width = 1024; -void fragment() -{ - float pixel_size = 1.0/screen_width*bleeding_range; - vec4 color_left = texture(SCREEN_TEXTURE,SCREEN_UV - vec2(pixel_size, 0)); - vec4 current_color = texture(SCREEN_TEXTURE,SCREEN_UV); - current_color = current_color*vec4(color_bleeding,0.5,0.25,1); - color_left = color_left*vec4(0.25,0.5,color_bleeding,1); - COLOR.rgba = (current_color + color_left); -}" - -[sub_resource type="ShaderMaterial" id=4] -shader = SubResource( 3 ) -shader_param/color_bleeding = 0.9 -shader_param/bleeding_range = 2.0 -shader_param/screen_width = 1024.0 - -[sub_resource type="Shader" id=5] -code = "shader_type canvas_item; - -uniform float lines_distance = 4.0; -uniform float pixel_size = 2.0; -uniform float size_screen = 600; -uniform float scanline_alpha = 0.9; -uniform float lines_velocity = 30.0; - -void fragment() -{ - float line_row = floor((SCREEN_UV.y * size_screen/pixel_size) + mod(TIME*lines_velocity, lines_distance)); - - float n = 1.0 - ceil((mod(line_row,lines_distance)/lines_distance)); - -vec4 c = texture(SCREEN_TEXTURE,SCREEN_UV); -c = c - n*c*(1.0 - scanline_alpha); -c.a = 1.0; -COLOR = c; -}" - -[sub_resource type="ShaderMaterial" id=6] -shader = SubResource( 5 ) -shader_param/lines_distance = 4.0 -shader_param/pixel_size = 2.0 -shader_param/size_screen = 600.0 -shader_param/scanline_alpha = 0.9 -shader_param/lines_velocity = 30.0 - -[sub_resource type="Shader" id=7] -code = "shader_type canvas_item; - -uniform float screen_width = 1024; -uniform float screen_height = 600; - -// Curvature -uniform float BarrelPower =1.1; -// Color bleeding -uniform float color_bleeding = 1.2; -uniform float bleeding_range_x = 3; -uniform float bleeding_range_y = 3; -// Scanline -uniform float lines_distance = 4.0; -uniform float scan_size = 2.0; -uniform float scanline_alpha = 0.9; -uniform float lines_velocity = 30.0; -vec2 distort(vec2 p) -{ - - float angle = p.y / p.x; - float theta = atan(p.y,p.x); - float radius = pow(length(p), BarrelPower); - - p.x = radius * cos(theta); - p.y = radius * sin(theta); - - return 0.5 * (p + vec2(1.0,1.0)); -} - -void get_color_bleeding(inout vec4 current_color,inout vec4 color_left){ - - current_color = current_color*vec4(color_bleeding,0.5,0.25,1); - color_left = color_left*vec4(0.25,0.5,color_bleeding,1); -} - -void get_color_scanline(vec2 uv,inout vec4 c,float time){ - float line_row = floor((uv.y * screen_height/scan_size) + mod(time*lines_velocity, lines_distance)); - - float n = 1.0 - ceil((mod(line_row,lines_distance)/lines_distance)); - - c = c - n*c*(1.0 - scanline_alpha); - c.a = 1.0; - -} - -void fragment() -{ - -vec2 xy = SCREEN_UV * 2.0; -xy.x -= 1.0; -xy.y -= 1.0; - -float d = length(xy); -if(d < 1.5){ - xy = distort(xy); -} -else{ - xy = SCREEN_UV; -} - -float pixel_size_x = 1.0/screen_width*bleeding_range_x; -float pixel_size_y = 1.0/screen_height*bleeding_range_y; -vec4 color_left = texture(SCREEN_TEXTURE,xy - vec2(pixel_size_x, pixel_size_y)); -vec4 current_color = texture(SCREEN_TEXTURE,xy); -get_color_bleeding(current_color,color_left); -vec4 c = current_color+color_left; -get_color_scanline(xy,c,TIME); -COLOR = c; - -} -" - -[sub_resource type="ShaderMaterial" id=8] -shader = SubResource( 7 ) -shader_param/screen_width = 1024.0 -shader_param/screen_height = 600.0 -shader_param/BarrelPower = 1.1 -shader_param/color_bleeding = 1.2 -shader_param/bleeding_range_x = 3.0 -shader_param/bleeding_range_y = 3.0 -shader_param/lines_distance = 4.0 -shader_param/scan_size = 2.0 -shader_param/scanline_alpha = 0.9 -shader_param/lines_velocity = 30.0 - -[node name="Control" type="Control"] -margin_right = 40.0 -margin_bottom = 40.0 - -[node name="Sprite" type="Sprite" parent="."] -texture = ExtResource( 1 ) -centered = false - -[node name="Shaders" type="Control" parent="."] -margin_right = 40.0 -margin_bottom = 40.0 - -[node name="Curvature" type="TextureRect" parent="Shaders"] -visible = false -material = SubResource( 2 ) -margin_right = 1024.0 -margin_bottom = 600.0 -texture = ExtResource( 2 ) -expand = true - -[node name="ColorBleeding" type="TextureRect" parent="Shaders"] -visible = false -material = SubResource( 4 ) -margin_right = 1024.0 -margin_bottom = 600.0 -texture = ExtResource( 2 ) -expand = true - -[node name="ScanLine" type="TextureRect" parent="Shaders"] -visible = false -material = SubResource( 6 ) -margin_right = 1024.0 -margin_bottom = 600.0 -texture = ExtResource( 2 ) -expand = true - -[node name="CRT" type="TextureRect" parent="Shaders"] -material = SubResource( 8 ) -margin_right = 1024.0 -margin_bottom = 600.0 -texture = ExtResource( 2 ) -expand = true -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="CRTFrame" type="TextureRect" parent="."] -margin_right = 1082.0 -margin_bottom = 812.0 -rect_scale = Vector2( 0.946396, 0.738916 ) -texture = ExtResource( 3 ) diff --git a/godot3/default_env.tres b/godot3/default_env.tres deleted file mode 100644 index 0f8c712..0000000 --- a/godot3/default_env.tres +++ /dev/null @@ -1,18 +0,0 @@ -[gd_resource type="Environment" load_steps=2 format=2] - -[sub_resource type="ProceduralSky" id=1] -radiance_size = 4 -sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 ) -sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 ) -sky_curve = 0.25 -ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 ) -ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 ) -ground_curve = 0.01 -sun_energy = 16.0 - -[resource] -background_mode = 2 -background_sky = SubResource( 1 ) -fog_height_min = 0.0 -fog_height_max = 100.0 -ssao_quality = 0 diff --git a/godot3/icon.png b/godot3/icon.png deleted file mode 100644 index a0b64ee..0000000 Binary files a/godot3/icon.png and /dev/null differ diff --git a/godot3/icon.png.import b/godot3/icon.png.import deleted file mode 100644 index 96cbf46..0000000 --- a/godot3/icon.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://icon.png" -dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/godot3/project.godot b/godot3/project.godot deleted file mode 100644 index 78aa4cf..0000000 --- a/godot3/project.godot +++ /dev/null @@ -1,24 +0,0 @@ -; Engine configuration file. -; It's best edited using the editor UI and not directly, -; since the parameters that go here are not all obvious. -; -; Format: -; [section] ; section goes between [] -; param=value ; assign values to parameters - -config_version=4 - -_global_script_classes=[ ] -_global_script_class_icons={ - -} - -[application] - -config/name="ShaderTest" -run/main_scene="res://ShaderTestScreen.tscn" -config/icon="res://icon.png" - -[rendering] - -environment/default_environment="res://default_env.tres" diff --git a/godot3/sample.png b/godot3/sample.png deleted file mode 100644 index 200fbf8..0000000 Binary files a/godot3/sample.png and /dev/null differ diff --git a/godot3/sample.png.import b/godot3/sample.png.import deleted file mode 100644 index 30ae8b5..0000000 --- a/godot3/sample.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://sample.png" -dest_files=[ "res://.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/godot3/white.png b/godot3/white.png deleted file mode 100644 index 573faa3..0000000 Binary files a/godot3/white.png and /dev/null differ diff --git a/godot3/white.png.import b/godot3/white.png.import deleted file mode 100644 index b7b4631..0000000 --- a/godot3/white.png.import +++ /dev/null @@ -1,34 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://white.png" -dest_files=[ "res://.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/icon.png b/icon.png new file mode 100644 index 0000000..a0b64ee Binary files /dev/null and b/icon.png differ diff --git a/icon.png.import b/icon.png.import new file mode 100644 index 0000000..96cbf46 --- /dev/null +++ b/icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.png" +dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..78aa4cf --- /dev/null +++ b/project.godot @@ -0,0 +1,24 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=4 + +_global_script_classes=[ ] +_global_script_class_icons={ + +} + +[application] + +config/name="ShaderTest" +run/main_scene="res://ShaderTestScreen.tscn" +config/icon="res://icon.png" + +[rendering] + +environment/default_environment="res://default_env.tres" diff --git a/sample.png.import b/sample.png.import new file mode 100644 index 0000000..30ae8b5 --- /dev/null +++ b/sample.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://sample.png" +dest_files=[ "res://.import/sample.png-e83d904df67be35a3470a03c20e2b3c2.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/white.png b/white.png new file mode 100644 index 0000000..573faa3 Binary files /dev/null and b/white.png differ diff --git a/white.png.import b/white.png.import new file mode 100644 index 0000000..b7b4631 --- /dev/null +++ b/white.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://white.png" +dest_files=[ "res://.import/white.png-d8533361663a5f8fe5200e5b5262a62d.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/withshader.png.import b/withshader.png.import new file mode 100644 index 0000000..5660359 --- /dev/null +++ b/withshader.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://withshader.png" +dest_files=[ "res://.import/withshader.png-9db2b2214c4e6972799a91a8b684c9db.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 -- cgit v1.2.3