├── .gitignore ├── LICENSE.md ├── README.md ├── assets └── maujoe.simple_wind_shader_2d │ ├── Docs.md │ ├── LICENSE.md │ ├── README.md │ ├── demo │ ├── default_env.tres │ ├── demo.tscn │ ├── materials │ │ └── grass_wind_2d.material │ └── textures │ │ ├── grass.png │ │ └── grass.png.import │ ├── icon.png │ ├── icon.png.import │ └── shaders │ ├── wind_2d.shader │ └── wind_2d_view_dependent_WIP.shader ├── default_env.tres ├── icon.png.import └── project.godot /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Godot-specific ignores 3 | .import/ 4 | export.cfg 5 | export_presets.cfg 6 | 7 | # Imported translations (automatically generated from CSV files) 8 | *.translation 9 | 10 | # Mono-specific ignores 11 | .mono/ 12 | data_*/ 13 | mono_crash.*.json 14 | 15 | # System/tool-specific ignores 16 | .directory 17 | *~ 18 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | 2 | All parts of this project that are not copyrighted or licensed by someone else are released under the MIT License: 3 | 4 | Copyright (c) 2017-2018 Jaccomo Lorenz (Maujoe) 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | SOFTWARE. 23 | 24 | 25 | ------------ 26 | Other Files: 27 | 28 | Some files caintained in this project may be generated by the Godot Engine version 3.0 that is covered by its own license, an up to date version can be found on: https://github.com/godotengine/godot/blob/master/LICENSE.txt. 29 | 30 | Quote (18th February 2018): 31 | 32 | "Copyright (c) 2007-2018 Juan Linietsky, Ariel Manzur. 33 | Copyright (c) 2014-2018 Godot Engine contributors (cf. AUTHORS.md) 34 | 35 | Permission is hereby granted, free of charge, to any person obtaining a copy 36 | of this software and associated documentation files (the "Software"), to deal 37 | in the Software without restriction, including without limitation the rights 38 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 39 | copies of the Software, and to permit persons to whom the Software is 40 | furnished to do so, subject to the following conditions: 41 | 42 | The above copyright notice and this permission notice shall be included in all 43 | copies or substantial portions of the Software. 44 | 45 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 46 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 47 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 48 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 49 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 50 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 51 | SOFTWARE." 52 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Simple Wind Shader 2 | 3 | A simple 2D shader for the godot engine that give sprites like grass or plants a wiggle/wind effect. 4 | This shader is a ported version of the [3D version](https://github.com/Maujoe/godot-simple-wind-shader) 5 | 6 | ## How to use 7 | 8 | There is a demo scene in the demo folder where you can test all features and play with the settings. 9 | 10 | If you don't need the demo just ignore the demo folder and connect your mesh with the wind_shader_2d.shader file that can be found in the shaders folder. 11 | 12 | ## Documentation: 13 | 14 | ### Shader settings avaiable from Editor/GDscript. 15 | - float speed - The speed of the wind movement. 16 | - float minStrength - The minimal strength of the wind movement. 17 | - float maxStrength - The maximal strength of the wind movement. 18 | - float strengthScale - Scalefactor for the wind strength. 19 | - float interval - The time between minimal and maximal strength changes. 20 | - float detail - The detail (number of waves) of the wind movement. 21 | - float distortion - The strength of geometry distortion. 22 | - float heightOffset - The height where the wind begins to move. By default 0.0. 23 | 24 | ## License 25 | 26 | All parts of this project that are not copyrighted or licensed by someone else are released free under the MIT License - see the LICENSE.md file for details. 27 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/Docs.md: -------------------------------------------------------------------------------- 1 | # Documentation: 2 | 3 | ## Shader settings avaiable from Editor/GDscript. 4 | - float speed - The speed of the wind movement. 5 | - float minStrength - The minimal strength of the wind movement. 6 | - float maxStrength - The maximal strength of the wind movement. 7 | - float strengthScale - Scalefactor for the wind strength. 8 | - float interval - The time between minimal and maximal strength changes. 9 | - float detail - The detail (number of waves) of the wind movement. 10 | - float distortion - The strength of geometry distortion. 11 | - float heightOffset - The height where the wind begins to move. By default 0.0. 12 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/LICENSE.md: -------------------------------------------------------------------------------- 1 | 2 | All parts of this project that are not copyrighted or licensed by someone else are released under the MIT License: 3 | 4 | Copyright (c) 2017-2018 Jaccomo Lorenz (Maujoe) 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | SOFTWARE. 23 | 24 | 25 | ------------ 26 | Other Files: 27 | 28 | Some files caintained in this project may be generated by the Godot Engine version 3.0 that is covered by its own license, an up to date version can be found on: https://github.com/godotengine/godot/blob/master/LICENSE.txt. 29 | 30 | Quote (18th February 2018): 31 | 32 | "Copyright (c) 2007-2018 Juan Linietsky, Ariel Manzur. 33 | Copyright (c) 2014-2018 Godot Engine contributors (cf. AUTHORS.md) 34 | 35 | Permission is hereby granted, free of charge, to any person obtaining a copy 36 | of this software and associated documentation files (the "Software"), to deal 37 | in the Software without restriction, including without limitation the rights 38 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 39 | copies of the Software, and to permit persons to whom the Software is 40 | furnished to do so, subject to the following conditions: 41 | 42 | The above copyright notice and this permission notice shall be included in all 43 | copies or substantial portions of the Software. 44 | 45 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 46 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 47 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 48 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 49 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 50 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 51 | SOFTWARE." 52 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/README.md: -------------------------------------------------------------------------------- 1 | # Simple Wind Shader 2 | 3 | A simple 2D shader for the godot engine that give sprites like grass or plants a wiggle/wind effect. 4 | This shader is a ported version of the [3D version](https://github.com/Maujoe/godot-simple-wind-shader) 5 | 6 | ## How to use 7 | 8 | There is a demo scene in the demo folder where you can test all features and play with the settings. 9 | 10 | If you don't need the demo just ignore the demo folder and connect your mesh with the wind_shader_2d.shader file that can be found in the shaders folder. 11 | 12 | ## Documentation: 13 | 14 | ### Shader settings avaiable from Editor/GDscript. 15 | - float speed - The speed of the wind movement. 16 | - float minStrength - The minimal strength of the wind movement. 17 | - float maxStrength - The maximal strength of the wind movement. 18 | - float strengthScale - Scalefactor for the wind strength. 19 | - float interval - The time between minimal and maximal strength changes. 20 | - float detail - The detail (number of waves) of the wind movement. 21 | - float distortion - The strength of geometry distortion. 22 | - float heightOffset - The height where the wind begins to move. By default 0.0. 23 | 24 | ## License 25 | 26 | All parts of this project that are not copyrighted or licensed by someone else are released free under the MIT License - see the LICENSE.md file for details. 27 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/demo/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | radiance_size = 4 6 | sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 ) 7 | sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 ) 8 | sky_curve = 0.25 9 | sky_energy = 1.0 10 | ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 ) 11 | ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 ) 12 | ground_curve = 0.01 13 | ground_energy = 1.0 14 | sun_color = Color( 1, 1, 1, 1 ) 15 | sun_latitude = 35.0 16 | sun_longitude = 0.0 17 | sun_angle_min = 1.0 18 | sun_angle_max = 100.0 19 | sun_curve = 0.05 20 | sun_energy = 16.0 21 | texture_size = 2 22 | 23 | [resource] 24 | 25 | background_mode = 2 26 | background_sky = SubResource( 1 ) 27 | background_sky_custom_fov = 0.0 28 | background_color = Color( 0, 0, 0, 1 ) 29 | background_energy = 1.0 30 | background_canvas_max_layer = 0 31 | ambient_light_color = Color( 0, 0, 0, 1 ) 32 | ambient_light_energy = 1.0 33 | ambient_light_sky_contribution = 1.0 34 | fog_enabled = false 35 | fog_color = Color( 0.5, 0.6, 0.7, 1 ) 36 | fog_sun_color = Color( 1, 0.9, 0.7, 1 ) 37 | fog_sun_amount = 0.0 38 | fog_depth_enabled = true 39 | fog_depth_begin = 10.0 40 | fog_depth_curve = 1.0 41 | fog_transmit_enabled = false 42 | fog_transmit_curve = 1.0 43 | fog_height_enabled = false 44 | fog_height_min = 0.0 45 | fog_height_max = 100.0 46 | fog_height_curve = 1.0 47 | tonemap_mode = 0 48 | tonemap_exposure = 1.0 49 | tonemap_white = 1.0 50 | auto_exposure_enabled = false 51 | auto_exposure_scale = 0.4 52 | auto_exposure_min_luma = 0.05 53 | auto_exposure_max_luma = 8.0 54 | auto_exposure_speed = 0.5 55 | ss_reflections_enabled = false 56 | ss_reflections_max_steps = 64 57 | ss_reflections_fade_in = 0.15 58 | ss_reflections_fade_out = 2.0 59 | ss_reflections_depth_tolerance = 0.2 60 | ss_reflections_roughness = true 61 | ssao_enabled = false 62 | ssao_radius = 1.0 63 | ssao_intensity = 1.0 64 | ssao_radius2 = 0.0 65 | ssao_intensity2 = 1.0 66 | ssao_bias = 0.01 67 | ssao_light_affect = 0.0 68 | ssao_color = Color( 0, 0, 0, 1 ) 69 | ssao_quality = 0 70 | ssao_blur = 3 71 | ssao_edge_sharpness = 4.0 72 | dof_blur_far_enabled = false 73 | dof_blur_far_distance = 10.0 74 | dof_blur_far_transition = 5.0 75 | dof_blur_far_amount = 0.1 76 | dof_blur_far_quality = 1 77 | dof_blur_near_enabled = false 78 | dof_blur_near_distance = 2.0 79 | dof_blur_near_transition = 1.0 80 | dof_blur_near_amount = 0.1 81 | dof_blur_near_quality = 1 82 | glow_enabled = false 83 | glow_levels/1 = false 84 | glow_levels/2 = false 85 | glow_levels/3 = true 86 | glow_levels/4 = false 87 | glow_levels/5 = true 88 | glow_levels/6 = false 89 | glow_levels/7 = false 90 | glow_intensity = 0.8 91 | glow_strength = 1.0 92 | glow_bloom = 0.0 93 | glow_blend_mode = 2 94 | glow_hdr_threshold = 1.0 95 | glow_hdr_scale = 2.0 96 | glow_bicubic_upscale = false 97 | adjustment_enabled = false 98 | adjustment_brightness = 1.0 99 | adjustment_contrast = 1.0 100 | adjustment_saturation = 1.0 101 | 102 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/demo/demo.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=2] 2 | 3 | [ext_resource path="res://assets/maujoe.simple_wind_shader_2d/shaders/wind_2d.shader" type="Shader" id=1] 4 | [ext_resource path="res://assets/maujoe.simple_wind_shader_2d/demo/textures/grass.png" type="Texture" id=2] 5 | 6 | [sub_resource type="ShaderMaterial" id=1] 7 | 8 | render_priority = 0 9 | shader = ExtResource( 1 ) 10 | shader_param/speed = 1.0 11 | shader_param/minStrength = 0.1 12 | shader_param/maxStrength = 0.4 13 | shader_param/strengthScale = 100.0 14 | shader_param/interval = 2.0 15 | shader_param/detail = 4.0 16 | shader_param/distortion = 1.0 17 | shader_param/heightOffset = 0.0 18 | _sections_unfolded = [ "shader_param" ] 19 | 20 | [node name="Node" type="Node" index="0"] 21 | 22 | [node name="grass" type="Sprite" parent="." index="0"] 23 | 24 | material = SubResource( 1 ) 25 | position = Vector2( 521.145, 473.75 ) 26 | texture = ExtResource( 2 ) 27 | _sections_unfolded = [ "Material", "Offset", "Transform" ] 28 | 29 | 30 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/demo/materials/grass_wind_2d.material: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JaccomoLorenz/godot-simple-wind-shader-2d/5a1ee79571530749b707c8fa3154acbe90aee727/assets/maujoe.simple_wind_shader_2d/demo/materials/grass_wind_2d.material -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/demo/textures/grass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JaccomoLorenz/godot-simple-wind-shader-2d/5a1ee79571530749b707c8fa3154acbe90aee727/assets/maujoe.simple_wind_shader_2d/demo/textures/grass.png -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/demo/textures/grass.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path.s3tc="res://.import/grass.png-c9deadca32e9d38d9e782a25f8c84562.s3tc.stex" 6 | path.etc2="res://.import/grass.png-c9deadca32e9d38d9e782a25f8c84562.etc2.stex" 7 | 8 | [deps] 9 | 10 | source_file="res://assets/maujoe.simple_wind_shader_2d/demo/textures/grass.png" 11 | dest_files=[ "res://.import/grass.png-c9deadca32e9d38d9e782a25f8c84562.s3tc.stex", "res://.import/grass.png-c9deadca32e9d38d9e782a25f8c84562.etc2.stex" ] 12 | 13 | [params] 14 | 15 | compress/mode=2 16 | compress/lossy_quality=0.7 17 | compress/hdr_mode=0 18 | compress/normal_map=0 19 | flags/repeat=0 20 | flags/filter=true 21 | flags/mipmaps=true 22 | flags/anisotropic=false 23 | flags/srgb=1 24 | process/fix_alpha_border=true 25 | process/premult_alpha=false 26 | process/HDR_as_SRGB=false 27 | stream=false 28 | size_limit=0 29 | detect_3d=false 30 | svg/scale=1.0 31 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JaccomoLorenz/godot-simple-wind-shader-2d/5a1ee79571530749b707c8fa3154acbe90aee727/assets/maujoe.simple_wind_shader_2d/icon.png -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/icon.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/icon.png-7e008c6b8a448f4d965030dadb2432d7.stex" 6 | 7 | [deps] 8 | 9 | source_file="res://assets/maujoe.simple_wind_shader_2d/icon.png" 10 | dest_files=[ "res://.import/icon.png-7e008c6b8a448f4d965030dadb2432d7.stex" ] 11 | 12 | [params] 13 | 14 | compress/mode=0 15 | compress/lossy_quality=0.7 16 | compress/hdr_mode=0 17 | compress/normal_map=0 18 | flags/repeat=0 19 | flags/filter=true 20 | flags/mipmaps=false 21 | flags/anisotropic=false 22 | flags/srgb=2 23 | process/fix_alpha_border=true 24 | process/premult_alpha=false 25 | process/HDR_as_SRGB=false 26 | stream=false 27 | size_limit=0 28 | detect_3d=true 29 | svg/scale=1.0 30 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/shaders/wind_2d.shader: -------------------------------------------------------------------------------- 1 | shader_type canvas_item; 2 | render_mode blend_mix; 3 | 4 | // Wind settings. 5 | uniform float speed = 1.0; 6 | uniform float minStrength : hint_range(0.0, 1.0); 7 | uniform float maxStrength : hint_range(0.0, 1.0); 8 | uniform float strengthScale = 100.0; 9 | uniform float interval = 3.5; 10 | uniform float detail = 1.0; 11 | uniform float distortion : hint_range(0.0, 1.0); 12 | uniform float heightOffset = 0.0; 13 | 14 | float getWind(vec2 vertex, vec2 uv, float timer){ 15 | vec2 pos = mix(vec2(1.0), vertex, distortion).xy; 16 | float time = timer * speed + pos.x * pos.y; 17 | float diff = pow(maxStrength - minStrength, 2.0); 18 | float strength = clamp(minStrength + diff + sin(time / interval) * diff, minStrength, maxStrength) * strengthScale; 19 | float wind = (sin(time) + cos(time * detail)) * strength * max(0.0, (1.0-uv.y) - heightOffset); 20 | 21 | return wind; 22 | } 23 | 24 | void vertex() { 25 | VERTEX.x += getWind(VERTEX.xy, UV, TIME); 26 | } 27 | -------------------------------------------------------------------------------- /assets/maujoe.simple_wind_shader_2d/shaders/wind_2d_view_dependent_WIP.shader: -------------------------------------------------------------------------------- 1 | shader_type canvas_item; 2 | render_mode blend_mix, skip_vertex_transform; 3 | 4 | // Wind settings. 5 | uniform float speed = 1.0; 6 | uniform float minStrength : hint_range(0.0, 1.0); 7 | uniform float maxStrength : hint_range(0.0, 1.0); 8 | uniform float strengthScale = 100.0; 9 | uniform float interval = 3.5; 10 | uniform float detail = 1.0; 11 | uniform float distortion : hint_range(0.0, 1.0); 12 | uniform float heightOffset = 0.0; 13 | 14 | vec2 getWind(mat4 worldMatrix, vec2 vertex, vec2 uv, float timer){ 15 | vec2 pos = (worldMatrix * mix(vec4(1.0), vec4(vertex, 0.0, 1.0), distortion)).xy; 16 | float time = timer * speed + pos.x * pos.y; 17 | float diff = pow(maxStrength - minStrength, 2.0); 18 | float strength = clamp(minStrength + diff + sin(time / interval) * diff, minStrength, maxStrength) * strengthScale; 19 | float wind = (sin(time) + cos(time * detail)) * strength * max(0.0, (1.0-uv.y) - heightOffset); 20 | 21 | return vec2(wind, wind); 22 | } 23 | 24 | void vertex() { 25 | vec4 worldPos = WORLD_MATRIX * vec4(VERTEX, 0.0, 1.0); 26 | worldPos.x += getWind(WORLD_MATRIX, VERTEX, UV, TIME).x; 27 | VERTEX = (EXTRA_MATRIX * worldPos).xy; 28 | } 29 | -------------------------------------------------------------------------------- /default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | radiance_size = 4 6 | sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 ) 7 | sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 ) 8 | sky_curve = 0.25 9 | sky_energy = 1.0 10 | ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 ) 11 | ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 ) 12 | ground_curve = 0.01 13 | ground_energy = 1.0 14 | sun_color = Color( 1, 1, 1, 1 ) 15 | sun_latitude = 35.0 16 | sun_longitude = 0.0 17 | sun_angle_min = 1.0 18 | sun_angle_max = 100.0 19 | sun_curve = 0.05 20 | sun_energy = 16.0 21 | texture_size = 2 22 | 23 | [resource] 24 | 25 | background_mode = 2 26 | background_sky = SubResource( 1 ) 27 | background_sky_custom_fov = 0.0 28 | background_color = Color( 0, 0, 0, 1 ) 29 | background_energy = 1.0 30 | background_canvas_max_layer = 0 31 | ambient_light_color = Color( 0, 0, 0, 1 ) 32 | ambient_light_energy = 1.0 33 | ambient_light_sky_contribution = 1.0 34 | fog_enabled = false 35 | fog_color = Color( 0.5, 0.6, 0.7, 1 ) 36 | fog_sun_color = Color( 1, 0.9, 0.7, 1 ) 37 | fog_sun_amount = 0.0 38 | fog_depth_enabled = true 39 | fog_depth_begin = 10.0 40 | fog_depth_curve = 1.0 41 | fog_transmit_enabled = false 42 | fog_transmit_curve = 1.0 43 | fog_height_enabled = false 44 | fog_height_min = 0.0 45 | fog_height_max = 100.0 46 | fog_height_curve = 1.0 47 | tonemap_mode = 0 48 | tonemap_exposure = 1.0 49 | tonemap_white = 1.0 50 | auto_exposure_enabled = false 51 | auto_exposure_scale = 0.4 52 | auto_exposure_min_luma = 0.05 53 | auto_exposure_max_luma = 8.0 54 | auto_exposure_speed = 0.5 55 | ss_reflections_enabled = false 56 | ss_reflections_max_steps = 64 57 | ss_reflections_fade_in = 0.15 58 | ss_reflections_fade_out = 2.0 59 | ss_reflections_depth_tolerance = 0.2 60 | ss_reflections_roughness = true 61 | ssao_enabled = false 62 | ssao_radius = 1.0 63 | ssao_intensity = 1.0 64 | ssao_radius2 = 0.0 65 | ssao_intensity2 = 1.0 66 | ssao_bias = 0.01 67 | ssao_light_affect = 0.0 68 | ssao_color = Color( 0, 0, 0, 1 ) 69 | ssao_quality = 0 70 | ssao_blur = 3 71 | ssao_edge_sharpness = 4.0 72 | dof_blur_far_enabled = false 73 | dof_blur_far_distance = 10.0 74 | dof_blur_far_transition = 5.0 75 | dof_blur_far_amount = 0.1 76 | dof_blur_far_quality = 1 77 | dof_blur_near_enabled = false 78 | dof_blur_near_distance = 2.0 79 | dof_blur_near_transition = 1.0 80 | dof_blur_near_amount = 0.1 81 | dof_blur_near_quality = 1 82 | glow_enabled = false 83 | glow_levels/1 = false 84 | glow_levels/2 = false 85 | glow_levels/3 = true 86 | glow_levels/4 = false 87 | glow_levels/5 = true 88 | glow_levels/6 = false 89 | glow_levels/7 = false 90 | glow_intensity = 0.8 91 | glow_strength = 1.0 92 | glow_bloom = 0.0 93 | glow_blend_mode = 2 94 | glow_hdr_threshold = 1.0 95 | glow_hdr_scale = 2.0 96 | glow_bicubic_upscale = false 97 | adjustment_enabled = false 98 | adjustment_brightness = 1.0 99 | adjustment_contrast = 1.0 100 | adjustment_saturation = 1.0 101 | 102 | -------------------------------------------------------------------------------- /icon.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="StreamTexture" 5 | path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" 6 | 7 | [deps] 8 | 9 | source_file="res://icon.png" 10 | source_md5="ae7e641067601e2184afcade49abd283" 11 | 12 | dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] 13 | dest_md5="84511021bbc8c9d37c7f0f4d181de883" 14 | 15 | [params] 16 | 17 | compress/mode=0 18 | compress/lossy_quality=0.7 19 | compress/hdr_mode=0 20 | compress/normal_map=0 21 | flags/repeat=0 22 | flags/filter=true 23 | flags/mipmaps=false 24 | flags/anisotropic=false 25 | flags/srgb=2 26 | process/fix_alpha_border=true 27 | process/premult_alpha=false 28 | process/HDR_as_SRGB=false 29 | stream=false 30 | size_limit=0 31 | detect_3d=true 32 | svg/scale=1.0 33 | -------------------------------------------------------------------------------- /project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=3 10 | 11 | [application] 12 | 13 | config/name="Simple Wind Shader 2D" 14 | run/main_scene="res://assets/maujoe.simple_wind_shader_2d/demo/demo.tscn" 15 | config/icon="res://assets/maujoe.simple_wind_shader_2d/icon.png" 16 | 17 | [rendering] 18 | 19 | environment/default_environment="res://default_env.tres" 20 | --------------------------------------------------------------------------------