From 71c92781e1147f67cfa9a6ec28251fc11d2b6358 Mon Sep 17 00:00:00 2001 From: IcterusGames <112021348+IcterusGames@users.noreply.github.com> Date: Wed, 1 Feb 2023 11:16:31 -0400 Subject: [PATCH] Version 1.0.3 --- addons/simplegrasstextured/grass.gd | 110 +++++++++++-- .../images/icon_density.svg | 147 ++++++++++++++++++ .../images/icon_density.svg.import | 37 +++++ .../images/icon_distance.svg | 137 ++++++++++++++++ .../images/icon_distance.svg.import | 37 +++++ .../images/icon_radius.svg | 145 +++++++++++++++++ .../images/icon_radius.svg.import | 37 +++++ .../images/win_pattern.png | Bin 0 -> 130999 bytes .../images/win_pattern.png.import | 35 +++++ addons/simplegrasstextured/plugin.cfg | 2 +- addons/simplegrasstextured/plugin.gd | 119 +++++++++++--- .../shaders/grass.gdshader | 34 ++-- addons/simplegrasstextured/toolbar.gd | 42 +++++ addons/simplegrasstextured/toolbar.tscn | 112 +++++++++++-- 14 files changed, 925 insertions(+), 69 deletions(-) create mode 100644 addons/simplegrasstextured/images/icon_density.svg create mode 100644 addons/simplegrasstextured/images/icon_density.svg.import create mode 100644 addons/simplegrasstextured/images/icon_distance.svg create mode 100644 addons/simplegrasstextured/images/icon_distance.svg.import create mode 100644 addons/simplegrasstextured/images/icon_radius.svg create mode 100644 addons/simplegrasstextured/images/icon_radius.svg.import create mode 100644 addons/simplegrasstextured/images/win_pattern.png create mode 100644 addons/simplegrasstextured/images/win_pattern.png.import diff --git a/addons/simplegrasstextured/grass.gd b/addons/simplegrasstextured/grass.gd index 4904aeb..bc7c969 100644 --- a/addons/simplegrasstextured/grass.gd +++ b/addons/simplegrasstextured/grass.gd @@ -29,27 +29,47 @@ extends MultiMeshInstance3D @export var player_radius := 0.5 : set = _on_set_player_radius @export_color_no_alpha var albedo := Color.WHITE : set = _on_set_albedo @export var texture_albedo : Texture = load("res://addons/simplegrasstextured/textures/grassbushcc008.png") : set = _on_set_texture_albedo -@export var alpha_scissor_threshold := 0.5 : set = _on_set_alpha_scissor_threshold +@export_range(0.0, 1.0) var alpha_scissor_threshold := 0.5 : set = _on_set_alpha_scissor_threshold @export var scale_h := 1.0 : set = _on_set_scale_h @export var scale_w := 1.0 : set = _on_set_scale_w @export var scale_var := -0.25 : set = _on_set_scale_var @export_range(0.0, 1.0) var grass_strength := 0.8 : set = _on_set_grass_strength @export var wind_dir := Vector3.RIGHT : set = _on_set_wind_dir -@export var wind_strength := 0.03 : set = _on_set_wind_strength -@export var wind_speed := 1.0 : set = _on_set_wind_speed +@export var wind_strength := 0.15 : set = _on_set_wind_strength +@export var wind_turbulence := 1.0 : set = _on_set_wind_turbulence +@export var wind_pattern : Texture = load("res://addons/simplegrasstextured/images/win_pattern.png") : set = _on_set_wind_pattern +@export_group("Optimization") @export var optimization_by_distance := false : set = _on_set_optimization_by_distance @export var optimization_level := 7.0 : set = _on_set_optimization_level +@export var optimization_dist_min := 10.0 : set = _on_set_optimization_dist_min +@export var optimization_dist_max := 50.0 : set = _on_set_optimization_dist_max -var dist_min : float = 0.0 +var sgt_radius := 2.0 +var sgt_density := 25 +var sgt_scale := 1.0 +var sgt_rotation := 0.0 +var sgt_rotation_rand := 1.0 +var sgt_dist_min := 0.0 +var sgt_follow_normal := false var _default_mesh : Mesh = null var _buffer_add : Array[Transform3D] = [] var _material := load("res://addons/simplegrasstextured/materials/grass.material").duplicate() as ShaderMaterial var _force_update_multimesh := false +var _properties = [] func _init(): _default_mesh = _build_default_mesh() + if Engine.is_editor_hint(): + for var_i in get_property_list(): + if not var_i.name.begins_with("sgt_"): + continue + _properties.append({ + "name": var_i.name, + "type": var_i.type, + "usage": PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_SCRIPT_VARIABLE, + }) func _ready(): @@ -58,7 +78,7 @@ func _ready(): else: set_process(false) if not has_meta("SimpleGrassTextured"): - # Update for previous version, now shader needs vertex color + # Update for previous version, 1.0.2 needs vertex color set_meta("SimpleGrassTextured", "1.0.2") _force_update_multimesh = true if multimesh != null: @@ -86,9 +106,12 @@ func _ready(): _on_set_grass_strength(grass_strength) _on_set_wind_dir(wind_dir) _on_set_wind_strength(wind_strength) - _on_set_wind_speed(wind_speed) + _on_set_wind_turbulence(wind_turbulence) + _on_set_wind_pattern(wind_pattern) _on_set_optimization_by_distance(optimization_by_distance) _on_set_optimization_level(optimization_level) + _on_set_optimization_dist_min(optimization_dist_min) + _on_set_optimization_dist_max(optimization_dist_max) func _process(_delta : float): @@ -97,15 +120,30 @@ func _process(_delta : float): _update_multimesh() -func add_grass(pos : Vector3, normal : Vector3, scale : Vector3): +func _get_property_list() -> Array: + if _properties == null: + return [] + return _properties + + +func add_grass(pos : Vector3, normal : Vector3, scale : Vector3, rotated : float): var trans := Transform3D() - trans = trans.rotated(Vector3.UP, TAU * randf()) - trans.basis.y = normal + if abs(normal.z) == 1: + trans.basis.x = Vector3(1,0,0) + trans.basis.y = Vector3(0,0,normal.z) + trans.basis.z = Vector3(0,normal.z,0) + trans.basis = trans.basis.orthonormalized() + else: + trans.basis.y = normal + trans.basis.x = normal.cross(trans.basis.z) + trans.basis.z = trans.basis.x.cross(normal) + trans.basis = trans.basis.orthonormalized() + trans = trans.rotated_local(Vector3.UP, rotated) trans = trans.scaled(scale) trans = trans.translated(pos) - if dist_min > 0: + if sgt_dist_min > 0: for trans_prev in _buffer_add: - if trans.origin.distance_to(trans_prev.origin) <= dist_min: + if trans.origin.distance_to(trans_prev.origin) <= sgt_dist_min: return _buffer_add.append(trans) @@ -141,11 +179,27 @@ func _update_multimesh(): multi_new.mesh = mesh else: multi_new.mesh = _default_mesh - if _buffer_add.size() > 0 and dist_min > 0: + if _buffer_add.size() > 0 and sgt_dist_min > 0: + var pos_min := Vector3(10000000, 10000000, 10000000) + var pos_max := pos_min * -1 + var center := Vector3.ZERO + var radius := 0.0 + var r_index := [] + for trans in _buffer_add: + if pos_min > trans.origin: + pos_min = trans.origin + if pos_max < trans.origin: + pos_max = trans.origin + center = pos_min + ((pos_max - pos_min) / 2.0) + radius = center.distance_to(pos_min) + 1.0 for i in range(multimesh.instance_count): + var trans := multimesh.get_instance_transform(i) + if trans.origin.distance_to(center) <= radius: + r_index.append(i) + for i in r_index: var trans := multimesh.get_instance_transform(i) for trans_add in _buffer_add: - if trans_add.origin.distance_to(trans.origin) <= dist_min: + if trans_add.origin.distance_to(trans.origin) <= sgt_dist_min: _buffer_add.erase(trans_add) break multi_new.instance_count = count_prev + _buffer_add.size() @@ -227,6 +281,11 @@ func _build_default_mesh() -> Mesh: func _on_set_mesh(value : Mesh): mesh = value + if _material != null: + if mesh != null: + _material.set_shader_parameter("grass_size_y", mesh.get_aabb().size.y) + else: + _material.set_shader_parameter("grass_size_y", 1.0) if Engine.is_editor_hint() and is_inside_tree(): _update_multimesh() @@ -297,10 +356,16 @@ func _on_set_wind_strength(value : float): _material.set_shader_parameter("wind_strength", wind_strength) -func _on_set_wind_speed(value : float): - wind_speed = value +func _on_set_wind_turbulence(value : float): + wind_turbulence = value + if _material != null: + _material.set_shader_parameter("wind_turbulence", wind_turbulence) + + +func _on_set_wind_pattern(value : Texture): + wind_pattern = value if _material != null: - _material.set_shader_parameter("wind_speed", wind_speed) + _material.set_shader_parameter("wind_pattern", wind_pattern) func _on_set_optimization_by_distance(value : bool): @@ -313,3 +378,16 @@ func _on_set_optimization_level(value : float): optimization_level = value if _material != null: _material.set_shader_parameter("optimization_level", optimization_level) + + +func _on_set_optimization_dist_min(value : float): + optimization_dist_min = value + if _material != null: + _material.set_shader_parameter("optimization_dist_min", optimization_dist_min) + + +func _on_set_optimization_dist_max(value : float): + optimization_dist_max = value + if _material != null: + _material.set_shader_parameter("optimization_dist_max", optimization_dist_max) + diff --git a/addons/simplegrasstextured/images/icon_density.svg b/addons/simplegrasstextured/images/icon_density.svg new file mode 100644 index 0000000..5418424 --- /dev/null +++ b/addons/simplegrasstextured/images/icon_density.svg @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/addons/simplegrasstextured/images/icon_density.svg.import b/addons/simplegrasstextured/images/icon_density.svg.import new file mode 100644 index 0000000..61d1789 --- /dev/null +++ b/addons/simplegrasstextured/images/icon_density.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://tqiak77omdnr" +path="res://.godot/imported/icon_density.svg-7b089b052c26d4ee2c77b8ad63ad16e0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/simplegrasstextured/images/icon_density.svg" +dest_files=["res://.godot/imported/icon_density.svg-7b089b052c26d4ee2c77b8ad63ad16e0.ctex"] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/bptc_ldr=0 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/addons/simplegrasstextured/images/icon_distance.svg b/addons/simplegrasstextured/images/icon_distance.svg new file mode 100644 index 0000000..16e1231 --- /dev/null +++ b/addons/simplegrasstextured/images/icon_distance.svg @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/addons/simplegrasstextured/images/icon_distance.svg.import b/addons/simplegrasstextured/images/icon_distance.svg.import new file mode 100644 index 0000000..64061ca --- /dev/null +++ b/addons/simplegrasstextured/images/icon_distance.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d28dlfkm62t6e" +path="res://.godot/imported/icon_distance.svg-6f60df3e00656181a46cdec0eba1538f.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/simplegrasstextured/images/icon_distance.svg" +dest_files=["res://.godot/imported/icon_distance.svg-6f60df3e00656181a46cdec0eba1538f.ctex"] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/bptc_ldr=0 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/addons/simplegrasstextured/images/icon_radius.svg b/addons/simplegrasstextured/images/icon_radius.svg new file mode 100644 index 0000000..f0627ec --- /dev/null +++ b/addons/simplegrasstextured/images/icon_radius.svg @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/addons/simplegrasstextured/images/icon_radius.svg.import b/addons/simplegrasstextured/images/icon_radius.svg.import new file mode 100644 index 0000000..a90f96d --- /dev/null +++ b/addons/simplegrasstextured/images/icon_radius.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://clm6vd2es8xm7" +path="res://.godot/imported/icon_radius.svg-d2b3500a305d528e2195bc11cea82c54.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/simplegrasstextured/images/icon_radius.svg" +dest_files=["res://.godot/imported/icon_radius.svg-d2b3500a305d528e2195bc11cea82c54.ctex"] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/bptc_ldr=0 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/addons/simplegrasstextured/images/win_pattern.png b/addons/simplegrasstextured/images/win_pattern.png new file mode 100644 index 0000000000000000000000000000000000000000..a3f9cb8f09eb31fb7e80e204deed89f8bfc45393 GIT binary patch literal 130999 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

H-~*WUjT2-h1n6B*elq?ZV8V7 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 int: if not (_edit_draw or _edit_erase): return EditorPlugin.AFTER_GUI_INPUT_PASS if event.pressed: - var normal := viewport_camera.project_ray_normal(event.position) - _raycast_3d.position = viewport_camera.project_ray_origin(event.position) - _raycast_3d.target_position = normal * 100000 + _raycast_3d.global_transform.origin = viewport_camera.project_ray_origin(event.position) + _raycast_3d.global_transform.basis.y = viewport_camera.project_ray_normal(event.position) + _raycast_3d.target_position = Vector3(0, 100000, 0) _raycast_3d.force_raycast_update() if _raycast_3d.is_colliding(): _position_draw = _raycast_3d.get_collision_point() _normal_draw = _raycast_3d.get_collision_normal() + _object_draw = _raycast_3d.get_collider() _on_timer_draw_timeout() _timer_draw.start(0.15) + else: + _object_draw = null else: + _object_draw = null _timer_draw.stop() return EditorPlugin.AFTER_GUI_INPUT_STOP if event is InputEventMouseMotion: - var normal := viewport_camera.project_ray_normal(event.position) - _raycast_3d.position = viewport_camera.project_ray_origin(event.position) - _raycast_3d.target_position = normal * 100000 + _raycast_3d.global_transform.origin = viewport_camera.project_ray_origin(event.position) + _raycast_3d.global_transform.basis.y = viewport_camera.project_ray_normal(event.position) + _raycast_3d.target_position = Vector3(0, 100000, 0) _raycast_3d.force_raycast_update() - if not _raycast_3d.is_colliding(): + if ( not _raycast_3d.is_colliding() + or ( _object_draw != null and _raycast_3d.get_collider() != _object_draw )): _decal_pointer.visible = false + _timer_draw.paused = true return EditorPlugin.AFTER_GUI_INPUT_PASS + else: + _timer_draw.paused = false _position_draw = _raycast_3d.get_collision_point() _normal_draw = _raycast_3d.get_collision_normal() - _decal_pointer.position = _position_draw + var trans := Transform3D() + if abs(_normal_draw.z) == 1: + trans.basis.x = Vector3(1,0,0) + trans.basis.y = Vector3(0,0,_normal_draw.z) + trans.basis.z = Vector3(0,_normal_draw.z,0) + else: + trans.basis.y = _normal_draw + trans.basis.x = _normal_draw.cross(trans.basis.z) + trans.basis.z = trans.basis.x.cross(_normal_draw) + trans.basis = trans.basis.orthonormalized() + trans.origin = _position_draw + _decal_pointer.global_transform = trans + _decal_pointer.extents = Vector3(_edit_radius, DEPTH_BRUSH, _edit_radius) _decal_pointer.visible = _edit_draw or _edit_erase return EditorPlugin.AFTER_GUI_INPUT_PASS @@ -164,18 +196,45 @@ func _on_button_erase_toggled(pressed : bool): _decal_pointer.visible = false +func _on_slider_radius_value_changed(value : float): + _edit_radius = value + _decal_pointer.extents = Vector3(_edit_radius, DEPTH_BRUSH, _edit_radius) + if _grass_selected != null: + _grass_selected.sgt_radius = value + + +func _on_slider_density_value_changed(value : float): + _edit_density = value + if _grass_selected != null: + _grass_selected.sgt_density = value + + func _on_edit_scale_value_changed(value : float): _edit_scale = Vector3(value, value, value) + if _grass_selected != null: + _grass_selected.sgt_scale = value + + +func _on_edit_rotation_value_changed(value : float): + _edit_rotation = value + if _grass_selected != null: + _grass_selected.sgt_rotation = value + + +func _on_edit_rotation_rand_value_changed(value : float): + _edit_rotation_rand = value + if _grass_selected != null: + _grass_selected.sgt_rotation_rand = value func _on_edit_distance_value_changed(value : float): if _grass_selected != null: - _grass_selected.dist_min = value + _grass_selected.sgt_dist_min = value -func _on_set_radius(value : float): - _edit_radius = value - _decal_pointer.scale = Vector3(_edit_radius, 20, _edit_radius) +func _on_chk_normals_toggled(pressed : bool): + if _grass_selected != null: + _grass_selected.sgt_follow_normal = pressed func _on_set_draw(value : bool): @@ -199,16 +258,26 @@ func _on_timer_draw_timeout(): return if _edit_draw: for i in _edit_density: - var variation := Vector3(randf() * _edit_radius, 1, 0).rotated(Vector3.UP, randf() * TAU) - _raycast_3d.global_position = _position_draw + variation - _raycast_3d.target_position = Vector3(0, -20, 0) + var variation = Vector3.RIGHT * _edit_radius * randf() + variation = variation.rotated(Vector3.UP, randf() * TAU) + variation = _decal_pointer.to_global(variation) - _decal_pointer.global_position + _raycast_3d.global_transform.basis.x = Vector3.RIGHT + _raycast_3d.global_transform.basis.y = _normal_draw * -1 + _raycast_3d.global_transform.basis.z = Vector3.BACK + _raycast_3d.global_transform.origin = _position_draw + _normal_draw + variation + _raycast_3d.target_position = Vector3(0, DEPTH_BRUSH, 0) _raycast_3d.force_raycast_update() - if _raycast_3d.is_colliding(): + if _raycast_3d.is_colliding() and _raycast_3d.get_collider() == _object_draw: var normal := Vector3.UP if _gui_toolbar.chk_normals.button_pressed: normal = _raycast_3d.get_collision_normal() - _grass_selected.add_grass(_raycast_3d.get_collision_point(), normal, _edit_scale) + _grass_selected.add_grass( + _raycast_3d.get_collision_point() - _grass_selected.global_position, + normal, + _edit_scale, + deg_to_rad(_edit_rotation) + (PI * (_edit_rotation_rand - (randf() * _edit_rotation_rand * 2.0))) + ) elif _edit_erase: - _grass_selected.erase(_position_draw, _edit_radius) + _grass_selected.erase(_position_draw - _grass_selected.global_position, _edit_radius) if _grass_selected.multimesh != null: _gui_toolbar.label_stats.text = "Count: " + str(_grass_selected.multimesh.instance_count) diff --git a/addons/simplegrasstextured/shaders/grass.gdshader b/addons/simplegrasstextured/shaders/grass.gdshader index 2d935bd..3a73e0d 100644 --- a/addons/simplegrasstextured/shaders/grass.gdshader +++ b/addons/simplegrasstextured/shaders/grass.gdshader @@ -36,30 +36,38 @@ uniform float scale_w = 1.0; uniform float scale_var : hint_range(-1.0, 1.0) = -0.25; uniform float grass_strength : hint_range(0.0, 1.0) = 0.8; uniform vec3 wind_dir = vec3(1.0, 0.0, 0.0); -uniform float wind_strength = 0.03; -uniform float wind_speed = 1.0; +uniform float wind_strength = 0.15; +uniform float wind_turbulence = 1.0; +uniform sampler2D wind_pattern : source_color,filter_linear,repeat_enable; uniform bool optimization_by_distance = false; uniform float optimization_level = 7.0; +uniform float optimization_dist_min = 10.0; +uniform float optimization_dist_max = 50.0; +uniform float grass_size_y = 1.0; void vertex() { - float lev = COLOR.r; + float lev = (VERTEX.y - NODE_POSITION_WORLD.y) / grass_size_y; float varid = float(INSTANCE_ID); - VERTEX.x += sin((TIME + varid) * wind_speed) * lev * ((1.0 - grass_strength) / 10.0); - VERTEX.x += wind_dir.x * lev * (wind_strength + (sin(TIME + varid) * 0.2 * (1.0 - grass_strength) * min(1.0, wind_speed))); - VERTEX.y += sin((TIME + varid) * wind_speed) * lev * ((1.0 - grass_strength) / 10.0) * wind_dir.y; - VERTEX.y += wind_dir.y * lev * (wind_strength + (sin(TIME + varid) * 0.2 * (1.0 - grass_strength) * min(1.0, wind_speed))); - VERTEX.z += cos((TIME + varid) * wind_speed) * lev * ((1.0 - grass_strength) / 10.0); - VERTEX.z += wind_dir.z * lev * (wind_strength + (sin(TIME + varid) * 0.2 * (1.0 - grass_strength) * min(1.0, wind_speed))); + float text_wind = texture(wind_pattern, (vec2(NODE_POSITION_WORLD.x, NODE_POSITION_WORLD.z) * 0.005) - (vec2(wind_dir.x, wind_dir.z) * TIME * (0.1 * wind_strength))).r; + VERTEX.x += text_wind * lev * wind_strength * wind_dir.x; + VERTEX.z += text_wind * lev * wind_strength * wind_dir.z; + VERTEX.x += sin((TIME + varid) * wind_turbulence) * lev * ((1.0 - grass_strength) / 10.0); + VERTEX.x += wind_dir.x * lev * (wind_strength + (sin(TIME + varid) * 0.2 * (1.0 - grass_strength) * min(1.0, wind_turbulence))); + VERTEX.y += sin((TIME + varid) * wind_turbulence) * lev * ((1.0 - grass_strength) / 10.0) * wind_dir.y; + VERTEX.y += wind_dir.y * lev * (wind_strength + (sin(TIME + varid) * 0.2 * (1.0 - grass_strength) * min(1.0, wind_turbulence))); + VERTEX.z += cos((TIME + varid) * wind_turbulence) * lev * ((1.0 - grass_strength) / 10.0); + VERTEX.z += wind_dir.z * lev * (wind_strength + (sin(TIME + varid) * 0.2 * (1.0 - grass_strength) * min(1.0, wind_turbulence))); vec3 align = VERTEX - NODE_POSITION_WORLD; - float varh = ((float(INSTANCE_ID % 5) / 5.0) * scale_var * lev); + float varh = ((float(INSTANCE_ID % 5) / 5.0) * scale_var); float varw = ((float(INSTANCE_ID % 5) / 5.0) * scale_var); float dist = 1.0; if(optimization_by_distance) { - dist = distance(NODE_POSITION_WORLD, CAMERA_POSITION_WORLD); - dist = 1.0 - clamp(0.0, 1.0, float(INSTANCE_ID % int(max(1.0, dist / optimization_level)))); + float node_dist = distance(NODE_POSITION_WORLD, CAMERA_POSITION_WORLD); + dist = 1.0 - clamp(0.0, 1.0, float(INSTANCE_ID % int(max(1.0, node_dist / optimization_level)))); + dist *= smoothstep(optimization_dist_max, optimization_dist_min, node_dist); } - VERTEX.y = ((align.y + varh) * scale_h * dist) + NODE_POSITION_WORLD.y; + VERTEX.y = (align.y * ((varh * scale_h) + scale_h) * dist) + NODE_POSITION_WORLD.y; VERTEX.x = (align.x * (scale_w - varw) * dist) + NODE_POSITION_WORLD.x; VERTEX.z = (align.z * (scale_w - varw) * dist) + NODE_POSITION_WORLD.z; float dist_player = 1.0 - clamp(0.0, 1.0, distance(NODE_POSITION_WORLD, player_pos) / max(player_radius, 0.1)); diff --git a/addons/simplegrasstextured/toolbar.gd b/addons/simplegrasstextured/toolbar.gd index 62aa001..a98386d 100644 --- a/addons/simplegrasstextured/toolbar.gd +++ b/addons/simplegrasstextured/toolbar.gd @@ -29,6 +29,48 @@ extends HBoxContainer @onready var slider_radius := $HSliderRadius as HSlider @onready var slider_density := $HSliderDensity as HSlider @onready var edit_scale := $SpinScale as SpinBox +@onready var edit_rotation := $SpinRotation as SpinBox +@onready var edit_rotation_rand := $SpinRotationRand as SpinBox @onready var edit_distance := $SpinDistanceMin as SpinBox @onready var chk_normals := $CheckFollowNormal as CheckBox @onready var label_stats := $LabelStats as Label + +@onready var _label_radius := $HSliderRadius/Label as Label +@onready var _label_density := $HSliderDensity/Label as Label +@onready var _tween_radius : Tween = null +@onready var _tween_density : Tween = null + + +func _ready(): + _on_theme_changed() + + +func _on_h_slider_radius_value_changed(value : float): + if _tween_radius != null: + _tween_radius.kill() + _label_radius.set("theme_override_colors/font_outline_color", _label_radius.get_theme_color("font_color").inverted()) + _tween_radius = _label_radius.create_tween() + _tween_radius.tween_property(_label_radius, "modulate", Color(1,1,1,1), 0.1) + _tween_radius.tween_interval(2) + _tween_radius.tween_property(_label_radius, "modulate", Color(1,1,1,0), 2) + _label_radius.text = "%0.1f" % value + + +func _on_h_slider_density_value_changed(value): + if _tween_density != null: + _tween_density.kill() + _label_density.set("theme_override_colors/font_outline_color", _label_density.get_theme_color("font_color").inverted()) + _tween_density = _label_density.create_tween() + _tween_density.tween_property(_label_density, "modulate", Color(1,1,1,1), 0.1) + _tween_density.tween_interval(2) + _tween_density.tween_property(_label_density, "modulate", Color(1,1,1,0), 2) + _label_density.text = str(value) + + +func _on_theme_changed(): + $IconScale.texture = get_theme_icon("ToolScale", "EditorIcons") + $IconRotation.texture = get_theme_icon("ToolRotate", "EditorIcons") + $IconRotationRand.texture = get_theme_icon("RandomNumberGenerator", "EditorIcons") + $IconRadius.modulate = get_theme_color("font_color", "Label") + $IconDensity.modulate = get_theme_color("font_color", "Label") + $IconDistance.modulate = get_theme_color("font_color", "Label") diff --git a/addons/simplegrasstextured/toolbar.tscn b/addons/simplegrasstextured/toolbar.tscn index 8de5936..72945ce 100644 --- a/addons/simplegrasstextured/toolbar.tscn +++ b/addons/simplegrasstextured/toolbar.tscn @@ -1,7 +1,22 @@ -[gd_scene load_steps=3 format=3 uid="uid://dsim5cbhc6kwm"] +[gd_scene load_steps=8 format=3 uid="uid://dsim5cbhc6kwm"] [ext_resource type="Script" path="res://addons/simplegrasstextured/toolbar.gd" id="1_aa1o6"] [ext_resource type="Texture2D" uid="uid://bsmcpupaj02v8" path="res://addons/simplegrasstextured/icon.svg" id="2_2ni6b"] +[ext_resource type="Texture2D" uid="uid://clm6vd2es8xm7" path="res://addons/simplegrasstextured/images/icon_radius.svg" id="3_sf2nv"] +[ext_resource type="Texture2D" uid="uid://tqiak77omdnr" path="res://addons/simplegrasstextured/images/icon_density.svg" id="4_4c5wp"] +[ext_resource type="Texture2D" uid="uid://d28dlfkm62t6e" path="res://addons/simplegrasstextured/images/icon_distance.svg" id="5_uonyg"] + +[sub_resource type="Image" id="Image_tbt8h"] +data = { +"data": PackedByteArray(255, 255, 255, 0, 255, 255, 255, 0, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 131, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 131, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 131, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 94, 94, 127, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 231, 255, 93, 93, 55, 255, 97, 97, 58, 255, 93, 93, 233, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 231, 255, 94, 94, 54, 255, 94, 94, 57, 255, 93, 93, 233, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 93, 93, 233, 255, 93, 93, 232, 255, 93, 93, 41, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 93, 93, 233, 255, 93, 93, 232, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 96, 96, 45, 255, 97, 97, 42, 255, 255, 255, 0, 255, 97, 97, 42, 255, 97, 97, 42, 255, 255, 255, 0, 255, 98, 98, 47, 255, 97, 97, 42, 255, 255, 255, 0, 255, 97, 97, 42, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 96, 96, 45, 255, 93, 93, 235, 255, 93, 93, 233, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 94, 94, 46, 255, 93, 93, 236, 255, 93, 93, 233, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 235, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 233, 255, 95, 95, 59, 255, 96, 96, 61, 255, 93, 93, 235, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 233, 255, 95, 95, 59, 255, 96, 96, 61, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0), +"format": "RGBA8", +"height": 16, +"mipmaps": false, +"width": 16 +} + +[sub_resource type="ImageTexture" id="ImageTexture_ms2vh"] +image = SubResource("Image_tbt8h") [node name="Control" type="HBoxContainer"] anchors_preset = 15 @@ -36,49 +51,79 @@ flat = true [node name="VSeparator2" type="VSeparator" parent="."] layout_mode = 2 -[node name="Label" type="Label" parent="."] +[node name="IconRadius" type="TextureRect" parent="."] +texture_filter = 1 layout_mode = 2 -text = "Radius" -vertical_alignment = 1 +texture = ExtResource("3_sf2nv") +stretch_mode = 3 [node name="HSliderRadius" type="HSlider" parent="."] custom_minimum_size = Vector2(100, 0) layout_mode = 2 size_flags_vertical = 1 +tooltip_text = "Radius" min_value = 0.1 max_value = 10.0 step = 0.1 value = 1.0 +[node name="Label" type="Label" parent="HSliderRadius"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_colors/font_outline_color = Color(0, 0, 0, 1) +theme_override_constants/outline_size = 2 +horizontal_alignment = 1 +vertical_alignment = 1 + [node name="Separator" type="Control" parent="."] custom_minimum_size = Vector2(15, 0) layout_mode = 2 -[node name="Label2" type="Label" parent="."] +[node name="IconDensity" type="TextureRect" parent="."] +texture_filter = 1 layout_mode = 2 -text = "Density" -vertical_alignment = 1 +texture = ExtResource("4_4c5wp") +stretch_mode = 3 [node name="HSliderDensity" type="HSlider" parent="."] custom_minimum_size = Vector2(100, 0) layout_mode = 2 size_flags_vertical = 1 +tooltip_text = "Density" min_value = 1.0 max_value = 200.0 value = 1.0 +[node name="Label" type="Label" parent="HSliderDensity"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_colors/font_outline_color = Color(0, 0, 0, 1) +theme_override_constants/outline_size = 2 +horizontal_alignment = 1 +vertical_alignment = 1 + [node name="Separator2" type="Control" parent="."] custom_minimum_size = Vector2(15, 0) layout_mode = 2 -[node name="Label3" type="Label" parent="."] +[node name="IconScale" type="TextureRect" parent="."] +texture_filter = 1 layout_mode = 2 -text = "Scale:" -vertical_alignment = 1 +texture = SubResource("ImageTexture_ms2vh") +stretch_mode = 3 [node name="SpinScale" type="SpinBox" parent="."] layout_mode = 2 size_flags_vertical = 4 +tooltip_text = "Scale" min_value = 0.01 step = 0.01 value = 1.0 @@ -88,21 +133,56 @@ select_all_on_focus = true custom_minimum_size = Vector2(15, 0) layout_mode = 2 -[node name="Label4" type="Label" parent="."] +[node name="IconRotation" type="TextureRect" parent="."] +texture_filter = 1 layout_mode = 2 -text = "Distance Min" -vertical_alignment = 1 +texture = SubResource("ImageTexture_ms2vh") +stretch_mode = 3 -[node name="SpinDistanceMin" type="SpinBox" parent="."] +[node name="SpinRotation" type="SpinBox" parent="."] layout_mode = 2 size_flags_vertical = 4 +tooltip_text = "Rotation" +max_value = 360.0 +step = 0.1 +select_all_on_focus = true + +[node name="IconRotationRand" type="TextureRect" parent="."] +texture_filter = 1 +layout_mode = 2 +texture = SubResource("ImageTexture_ms2vh") +stretch_mode = 3 + +[node name="SpinRotationRand" type="SpinBox" parent="."] +layout_mode = 2 +size_flags_vertical = 4 +tooltip_text = "Rotation randomizer" +max_value = 1.0 step = 0.01 +value = 1.0 select_all_on_focus = true [node name="Separator4" type="Control" parent="."] custom_minimum_size = Vector2(15, 0) layout_mode = 2 +[node name="IconDistance" type="TextureRect" parent="."] +texture_filter = 1 +layout_mode = 2 +texture = ExtResource("5_uonyg") +stretch_mode = 3 + +[node name="SpinDistanceMin" type="SpinBox" parent="."] +layout_mode = 2 +size_flags_vertical = 4 +tooltip_text = "Minimum distance between grasses" +step = 0.01 +select_all_on_focus = true + +[node name="Separator5" type="Control" parent="."] +custom_minimum_size = Vector2(15, 0) +layout_mode = 2 + [node name="CheckFollowNormal" type="CheckBox" parent="."] layout_mode = 2 button_pressed = true @@ -114,3 +194,7 @@ size_flags_horizontal = 3 text = "Count: 0" horizontal_alignment = 2 vertical_alignment = 1 + +[connection signal="theme_changed" from="." to="." method="_on_theme_changed"] +[connection signal="value_changed" from="HSliderRadius" to="." method="_on_h_slider_radius_value_changed"] +[connection signal="value_changed" from="HSliderDensity" to="." method="_on_h_slider_density_value_changed"]