From f24d9f039627e77b3888936e934cd5b73ff95184 Mon Sep 17 00:00:00 2001 From: chendian <-> Date: Mon, 22 Jan 2024 03:04:44 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E5=8F=97=E5=87=BB=E9=97=AA=E7=99=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- render/material/effect_skew1.tres | 13 +++++++++++++ render/shader/effect_skew1.gdshader | 16 ++++++++++++++++ .../effect/particle/hero01_common_skill02.tscn | 2 +- .../effect/particle/particle_slash_normal.tscn | 17 ++++++++++++++++- scene/ui/hud_screen.tscn | 1 + script/character/view.gd | 2 +- 6 files changed, 48 insertions(+), 3 deletions(-) create mode 100644 render/material/effect_skew1.tres create mode 100644 render/shader/effect_skew1.gdshader diff --git a/render/material/effect_skew1.tres b/render/material/effect_skew1.tres new file mode 100644 index 0000000..cb7551b --- /dev/null +++ b/render/material/effect_skew1.tres @@ -0,0 +1,13 @@ +[gd_resource type="ShaderMaterial" load_steps=5 format=3 uid="uid://bkbuvtya3uk3x"] + +[ext_resource type="Shader" path="res://render/shader/effect_slash.gdshader" id="1_igfou"] +[ext_resource type="Texture2D" uid="uid://dd3e7ol8qa5eq" path="res://render/texture/noise/noise2.png" id="2_hohok"] +[ext_resource type="Texture2D" uid="uid://cksxjvafx2skm" path="res://render/texture/mask/mask5.png" id="3_mbqrk"] +[ext_resource type="Texture2D" uid="uid://c4byf37he3mjt" path="res://render/texture/noise/noise1.png" id="4_vjpnf"] + +[resource] +render_priority = 0 +shader = ExtResource("1_igfou") +shader_parameter/tex_main = ExtResource("2_hohok") +shader_parameter/tex_noise = ExtResource("4_vjpnf") +shader_parameter/tex_mask = ExtResource("3_mbqrk") diff --git a/render/shader/effect_skew1.gdshader b/render/shader/effect_skew1.gdshader new file mode 100644 index 0000000..61d7f87 --- /dev/null +++ b/render/shader/effect_skew1.gdshader @@ -0,0 +1,16 @@ +shader_type spatial; +render_mode blend_add,unshaded; + +uniform sampler2D tex_noise : source_color; +uniform sampler2D tex_mask : source_color; +uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, filter_nearest; + +void fragment() { + vec2 uv2 = UV - 1.0 * vec2(mod(TIME, 2.0) - 1.0, 0); + vec4 col_noise = texture(tex_noise, UV - 0.5 * vec2(mod(TIME, 2.0) - 1.0, 0)); + vec4 col_mask = texture(tex_mask, UV); + vec4 col_screen = textureLod(screen_texture, SCREEN_UV, 0.0); + vec4 col = col_screen; + ALBEDO = col.rgb; + ALPHA = col_mask.r; +} diff --git a/scene/effect/particle/hero01_common_skill02.tscn b/scene/effect/particle/hero01_common_skill02.tscn index e847849..7c24955 100644 --- a/scene/effect/particle/hero01_common_skill02.tscn +++ b/scene/effect/particle/hero01_common_skill02.tscn @@ -3,4 +3,4 @@ [ext_resource type="PackedScene" uid="uid://b2h4pcmlii7dg" path="res://scene/effect/particle/particle_slash_normal.tscn" id="1_qyqjx"] [node name="Particle" instance=ExtResource("1_qyqjx")] -transform = Transform3D(2, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0) +transform = Transform3D(1.5, 0, 0, 0, 1, 0, 0, 0, 1.2, 0, 0, 0) diff --git a/scene/effect/particle/particle_slash_normal.tscn b/scene/effect/particle/particle_slash_normal.tscn index 1a531a5..ee5e26f 100644 --- a/scene/effect/particle/particle_slash_normal.tscn +++ b/scene/effect/particle/particle_slash_normal.tscn @@ -1,9 +1,10 @@ -[gd_scene load_steps=5 format=3 uid="uid://b2h4pcmlii7dg"] +[gd_scene load_steps=6 format=3 uid="uid://b2h4pcmlii7dg"] [ext_resource type="Material" uid="uid://dtyosukxpf33d" path="res://render/material/effect_slash.tres" id="1_6c80n"] [ext_resource type="Script" path="res://script/effect/particle.gd" id="1_fx8ev"] [ext_resource type="Material" uid="uid://dubkkji6sm8on" path="res://render/process_material/slash_normal.tres" id="2_eq67i"] [ext_resource type="ArrayMesh" uid="uid://dq207a0waxk0j" path="res://render/mesh/slash1.obj" id="3_idjnm"] +[ext_resource type="Material" uid="uid://bkbuvtya3uk3x" path="res://render/material/effect_skew1.tres" id="5_qg8g8"] [node name="Particle" type="Node3D"] script = ExtResource("1_fx8ev") @@ -21,3 +22,17 @@ fixed_fps = 60 local_coords = true process_material = ExtResource("2_eq67i") draw_pass_1 = ExtResource("3_idjnm") + +[node name="Skew1" type="GPUParticles3D" parent="."] +material_override = ExtResource("5_qg8g8") +cast_shadow = 0 +gi_mode = 0 +emitting = false +amount = 1 +lifetime = 0.25 +one_shot = true +speed_scale = 1.5 +fixed_fps = 60 +local_coords = true +process_material = ExtResource("2_eq67i") +draw_pass_1 = ExtResource("3_idjnm") diff --git a/scene/ui/hud_screen.tscn b/scene/ui/hud_screen.tscn index 99ecbbc..8fe63f2 100644 --- a/scene/ui/hud_screen.tscn +++ b/scene/ui/hud_screen.tscn @@ -267,6 +267,7 @@ offset_right = 36.0 offset_bottom = 12.0 [node name="CoreItemLock" type="Control" parent="HudPage/CoreItem"] +visible = false anchors_preset = 0 offset_right = 40.0 offset_bottom = 40.0 diff --git a/script/character/view.gd b/script/character/view.gd index f310997..a09eef9 100644 --- a/script/character/view.gd +++ b/script/character/view.gd @@ -155,7 +155,7 @@ func _update_material(): var material = material_override as ShaderMaterial var material2 = material_override.next_pass as ShaderMaterial var tex = sprite_frames.get_frame_texture(animation,frame) - material.set_shader_parameter("flash_white",status.flash_white_rate) + material2.set_shader_parameter("flash_white",status.flash_white_rate) material.set_shader_parameter("deformation_dir",status.deformation_dir) material2.set_shader_parameter("deformation_dir",status.deformation_dir) material.set_shader_parameter("deformation_rate",status.deformation_rate*0.4)