fix 受击闪白

master
chendian 2 years ago
parent 91ed36d3be
commit f24d9f0396

@ -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")

@ -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;
}

@ -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)

@ -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")

@ -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

@ -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)

Loading…
Cancel
Save