Floatbot assets added, and nodetunnel being implemented.

This commit is contained in:
2026-02-03 06:59:07 -05:00
parent b90fdaad98
commit e7570c78c3
105 changed files with 14184 additions and 5 deletions

View File

@@ -0,0 +1,559 @@
[gd_scene load_steps=59 format=3 uid="uid://bflg720h1w3d3"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_so17j"]
[ext_resource type="Shader" uid="uid://b6ke6r1fjb8s3" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core.gdshader" id="2_d2rk6"]
[ext_resource type="Material" uid="uid://dnw08mtonx63d" path="res://assets/BinbunVFX/impact_explosions/src/material/explosion/explosion_smoke.tres" id="2_plj08"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="3_msnhc"]
[ext_resource type="Shader" uid="uid://bf8eiigjam2fr" path="res://assets/BinbunVFX/impact_explosions/src/shader/explostion_ring.gdshader" id="5_d2rk6"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="5_otofc"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="6_d2rk6"]
[ext_resource type="Shader" uid="uid://ccd4kg68n7uox" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic_billboard.gdshader" id="8_y01pw"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="9_85p3d"]
[sub_resource type="Gradient" id="Gradient_y01pw"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_85p3d"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_csir3"]
seamless = true
color_ramp = SubResource("Gradient_y01pw")
noise = SubResource("FastNoiseLite_85p3d")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_e6ocy"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("2_d2rk6")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_csir3")
shader_parameter/primary_color = Color(1, 0.662745, 0.0666667, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/decay = 0.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="SphereMesh" id="SphereMesh_awqfb"]
radius = 1.8
height = 3.6
radial_segments = 32
rings = 16
[sub_resource type="Curve" id="Curve_msnhc"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -1.42645, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_csir3"]
curve = SubResource("Curve_msnhc")
[sub_resource type="Gradient" id="Gradient_msnhc"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 1, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_e6ocy"]
gradient = SubResource("Gradient_msnhc")
[sub_resource type="Gradient" id="Gradient_plj08"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_u3den"]
gradient = SubResource("Gradient_plj08")
[sub_resource type="Curve" id="Curve_plj08"]
_data = [Vector2(0, 0.103036), 0.0, 2.87627, 0, 0, Vector2(0.502404, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), -0.135687, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_fabmy"]
curve = SubResource("Curve_plj08")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_cp01m"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
spread = 180.0
initial_velocity_min = 6.0
initial_velocity_max = 10.0
gravity = Vector3(0, 0, 0)
damping_min = 15.0
damping_max = 20.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_fabmy")
color_ramp = SubResource("GradientTexture1D_u3den")
color_initial_ramp = SubResource("GradientTexture1D_e6ocy")
alpha_curve = SubResource("CurveTexture_csir3")
[sub_resource type="SphereMesh" id="SphereMesh_plj08"]
radius = 1.2
height = 2.4
radial_segments = 32
rings = 16
[sub_resource type="Gradient" id="Gradient_so17j"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_y01pw"]
gradient = SubResource("Gradient_so17j")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_msnhc"]
render_priority = 0
shader = ExtResource("3_msnhc")
shader_parameter/shape_texture = SubResource("GradientTexture2D_y01pw")
shader_parameter/primary_color = Color(1, 0.662745, 0.0666667, 1)
shader_parameter/secondary_color = Color(0.984314, 0.192157, 0, 1)
[sub_resource type="Curve" id="Curve_otofc"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_e6ocy"]
curve = SubResource("Curve_otofc")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_msnhc"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
spread = 180.0
initial_velocity_min = 5.0
initial_velocity_max = 20.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_e6ocy")
[sub_resource type="QuadMesh" id="QuadMesh_so17j"]
size = Vector2(0.05, 0.4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_d2rk6"]
noise_type = 2
fractal_octaves = 3
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_7t2vj"]
seamless = true
noise = SubResource("FastNoiseLite_d2rk6")
[sub_resource type="Gradient" id="Gradient_d2rk6"]
offsets = PackedFloat32Array(0.868159, 0.980099, 1)
colors = PackedColorArray(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_cwquj"]
gradient = SubResource("Gradient_d2rk6")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_y01pw"]
render_priority = 0
shader = ExtResource("5_d2rk6")
shader_parameter/ring_texture = SubResource("GradientTexture2D_cwquj")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_7t2vj")
shader_parameter/primary_color = Color(1, 0.662745, 0.0666667, 1)
shader_parameter/secondary_color = Color(0.984314, 0.192157, 0, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_y01pw"]
_data = [Vector2(0, 1), 0.0, -0.971299, 0, 0, Vector2(1, 0), -0.989796, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_qiymc"]
curve = SubResource("Curve_y01pw")
[sub_resource type="Curve" id="Curve_d2rk6"]
_data = [Vector2(0, 0), 0.0, 6.09936, 0, 0, Vector2(0.216346, 0.856486), 0.699631, 0.699631, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_78tnr"]
curve = SubResource("Curve_d2rk6")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_otofc"]
particle_flag_align_y = true
angle_min = 1.07288e-05
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 90.0
initial_velocity_min = -0.2
initial_velocity_max = 0.2
gravity = Vector3(0, 0, 0)
scale_min = 0.6
scale_max = 1.2
scale_curve = SubResource("CurveTexture_78tnr")
alpha_curve = SubResource("CurveTexture_qiymc")
[sub_resource type="QuadMesh" id="QuadMesh_otofc"]
size = Vector2(8, 8)
subdivide_width = 32
subdivide_depth = 32
orientation = 1
[sub_resource type="Gradient" id="Gradient_85p3d"]
offsets = PackedFloat32Array(0.29558, 1)
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_3i5cu"]
gradient = SubResource("Gradient_85p3d")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_y01pw"]
noise_type = 2
frequency = 0.02
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_cwquj"]
invert = true
seamless = true
seamless_blend_skirt = 1.0
noise = SubResource("FastNoiseLite_y01pw")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_85p3d"]
render_priority = 0
shader = ExtResource("8_y01pw")
shader_parameter/mask_texture = SubResource("GradientTexture2D_3i5cu")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_cwquj")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/alpha_multiplier = 0.5
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_85p3d"]
_data = [Vector2(0, 0), 0.0, 1.01211, 0, 0, Vector2(1, 1), 0.977263, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_xi76h"]
curve = SubResource("Curve_85p3d")
[sub_resource type="Gradient" id="Gradient_csir3"]
colors = PackedColorArray(0, 0, 0, 1, 1, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_8vear"]
gradient = SubResource("Gradient_csir3")
[sub_resource type="Curve" id="Curve_752a7"]
_limits = [0.0, 3.0, 0.0, 1.0]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_pr5p5"]
curve = SubResource("Curve_752a7")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_csir3"]
spread = 180.0
flatness = 0.8
initial_velocity_min = 4.0
initial_velocity_max = 6.0
gravity = Vector3(0, 1, 0)
damping_min = 1.0
damping_max = 2.0
scale_over_velocity_curve = SubResource("CurveTexture_pr5p5")
color_initial_ramp = SubResource("GradientTexture1D_8vear")
alpha_curve = SubResource("CurveTexture_xi76h")
[sub_resource type="QuadMesh" id="QuadMesh_e6ocy"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="Animation" id="Animation_plj08"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Decal:emission_energy")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Decal:albedo_mix")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Decal:modulate")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(0, 0, 0, 1)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Rings:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Core:material_override:shader_parameter/decay")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Dust:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Light:light_multiplier")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_v36aq"]
resource_name = "main"
length = 1.2
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Smoke:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0.05),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sparks:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0.05),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Decal:emission_energy")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 1.2),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [4.0, 0.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:albedo_mix")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.5, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 1.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:modulate")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 1.2),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(1, 0.32549, 0, 1), Color(0, 0, 0, 1)]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Rings:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Core:material_override:shader_parameter/decay")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0, 0.1, 1, 1.2),
"transitions": PackedFloat32Array(0.5, 0.5, 1, 1),
"update": 0,
"values": [null, 0.5, 1.0, 1.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Dust:emitting")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0.05),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Light:light_multiplier")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 1),
"transitions": PackedFloat32Array(0.6, 1),
"update": 0,
"values": [1.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_plj08"]
_data = {
&"RESET": SubResource("Animation_plj08"),
&"main": SubResource("Animation_v36aq")
}
[node name="VFXExplosion_01" type="Node3D"]
script = ExtResource("1_so17j")
primary_color = Color(1, 0.662745, 0.0666667, 1)
secondary_color = Color(0.984314, 0.192157, 0, 1)
tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
light_color = Color(1, 0.662745, 0.0666667, 1)
light_energy = 12.0
alpha_mode = 1
[node name="Core" type="MeshInstance3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_e6ocy")
mesh = SubResource("SphereMesh_awqfb")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
material_override = ExtResource("2_plj08")
amount = 16
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_cp01m")
draw_pass_1 = SubResource("SphereMesh_plj08")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_msnhc")
amount = 16
lifetime = 0.5
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_msnhc")
draw_pass_1 = SubResource("QuadMesh_so17j")
[node name="Rings" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_y01pw")
emitting = false
amount = 3
lifetime = 1.2
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_otofc")
draw_pass_1 = SubResource("QuadMesh_otofc")
[node name="Dust" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_85p3d")
emitting = false
amount = 16
one_shot = true
explosiveness = 0.9
process_material = SubResource("ParticleProcessMaterial_csir3")
draw_pass_1 = SubResource("QuadMesh_e6ocy")
[node name="Decal" type="Decal" parent="."]
visible = false
size = Vector3(5, 5, 5)
texture_albedo = ExtResource("5_otofc")
texture_emission = ExtResource("6_d2rk6")
emission_energy = 0.0
modulate = Color(0, 0, 0, 1)
albedo_mix = 0.0
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.662745, 0.0666667, 1)
light_energy = 12.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("9_85p3d")
base_energy = 12.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
callback_mode_method = 1
libraries = {
&"": SubResource("AnimationLibrary_plj08")
}
autoplay = "RESET"

View File

@@ -0,0 +1,616 @@
[gd_scene load_steps=67 format=3 uid="uid://dato0qpbqvwnj"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_8n8gd"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_cdqbm"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="1_sadvm"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="2_8n8gd"]
[ext_resource type="Shader" uid="uid://bf8eiigjam2fr" path="res://assets/BinbunVFX/impact_explosions/src/shader/explostion_ring.gdshader" id="3_cdqbm"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="6_bdwyf"]
[ext_resource type="Shader" uid="uid://ccd4kg68n7uox" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic_billboard.gdshader" id="6_haqe0"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="7_haqe0"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="9_bqkcx"]
[sub_resource type="Gradient" id="Gradient_8n8gd"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_cdqbm"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_haqe0"]
seamless = true
color_ramp = SubResource("Gradient_8n8gd")
noise = SubResource("FastNoiseLite_cdqbm")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_bdwyf"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_8n8gd")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_haqe0")
shader_parameter/primary_color = Color(1, 0.294118, 0.0666667, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_cdqbm"]
_data = [Vector2(0, 0), 0.0, 2.58816, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_rmi04"]
curve = SubResource("Curve_cdqbm")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_sadvm"]
emission_shape = 2
emission_sphere_radius = 0.2
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
initial_velocity_min = -0.5
initial_velocity_max = 0.5
gravity = Vector3(0, 0, 0)
scale_min = 0.5
alpha_curve = SubResource("CurveTexture_rmi04")
[sub_resource type="SphereMesh" id="SphereMesh_cdqbm"]
radius = 1.8
height = 2.0
[sub_resource type="FastNoiseLite" id="FastNoiseLite_8n8gd"]
seed = 2
fractal_type = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_bqkcx"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_8n8gd")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_w7scw"]
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_frequency = 0.005
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_rmi04"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_w7scw")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_bqkcx"]
render_priority = 0
shader = ExtResource("1_sadvm")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_rmi04")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_bqkcx")
shader_parameter/primary_color = Color(1, 0.294118, 0.0666667, 1)
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 1
[sub_resource type="Curve" id="Curve_sadvm"]
_data = [Vector2(0, 1), 0.0, -0.977263, 0, 0, Vector2(1, 0), -0.983939, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_1gfff"]
curve = SubResource("Curve_sadvm")
[sub_resource type="Gradient" id="Gradient_cdqbm"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 0.47451, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_lnkdc"]
gradient = SubResource("Gradient_cdqbm")
[sub_resource type="Gradient" id="Gradient_bdwyf"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_37nkj"]
gradient = SubResource("Gradient_bdwyf")
[sub_resource type="Curve" id="Curve_bqkcx"]
_data = [Vector2(0, 1), 0.0, -0.0648056, 0, 0, Vector2(1, 0.374871), -1.36091, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_nk5kr"]
curve = SubResource("Curve_bqkcx")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_1gfff"]
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 1.0
initial_velocity_min = 6.0
initial_velocity_max = 10.0
gravity = Vector3(0, 0, 0)
damping_min = 15.0
damping_max = 20.0
scale_min = 0.4
scale_max = 1.1
scale_curve = SubResource("CurveTexture_nk5kr")
color_ramp = SubResource("GradientTexture1D_37nkj")
color_initial_ramp = SubResource("GradientTexture1D_lnkdc")
alpha_curve = SubResource("CurveTexture_1gfff")
[sub_resource type="SphereMesh" id="SphereMesh_lnkdc"]
radius = 1.0
radial_segments = 32
rings = 16
[sub_resource type="Gradient" id="Gradient_sadvm"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_bdwyf"]
gradient = SubResource("Gradient_sadvm")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_cdqbm"]
render_priority = 0
shader = ExtResource("2_8n8gd")
shader_parameter/shape_texture = SubResource("GradientTexture2D_bdwyf")
shader_parameter/primary_color = Color(1, 0.294118, 0.0666667, 1)
shader_parameter/secondary_color = Color(0.713726, 0.192157, 0, 1)
[sub_resource type="Curve" id="Curve_bdwyf"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_bqkcx"]
curve = SubResource("Curve_bdwyf")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_bqkcx"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 0.8
initial_velocity_min = 5.0
initial_velocity_max = 20.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_bqkcx")
[sub_resource type="QuadMesh" id="QuadMesh_rmi04"]
size = Vector2(0.05, 0.4)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_sadvm"]
noise_type = 2
fractal_octaves = 3
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_kp1a8"]
seamless = true
noise = SubResource("FastNoiseLite_sadvm")
[sub_resource type="Gradient" id="Gradient_w7scw"]
offsets = PackedFloat32Array(0.868159, 0.980099, 1)
colors = PackedColorArray(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_oylqv"]
gradient = SubResource("Gradient_w7scw")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_haqe0"]
render_priority = 0
shader = ExtResource("3_cdqbm")
shader_parameter/ring_texture = SubResource("GradientTexture2D_oylqv")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_kp1a8")
shader_parameter/primary_color = Color(1, 0.294118, 0.0666667, 1)
shader_parameter/secondary_color = Color(0.713726, 0.192157, 0, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 1
[sub_resource type="Curve" id="Curve_haqe0"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.57182, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_o3arm"]
curve = SubResource("Curve_haqe0")
[sub_resource type="Curve" id="Curve_rmi04"]
_data = [Vector2(0, 0), 0.0, 6.09936, 0, 0, Vector2(0.216346, 0.856486), 0.699631, 0.699631, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_gud6y"]
curve = SubResource("Curve_rmi04")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_lnkdc"]
angle_min = 1.07288e-05
angle_max = 1.07288e-05
direction = Vector3(0, 1, 0)
spread = 90.0
initial_velocity_min = -1.0
initial_velocity_max = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.6
scale_max = 1.2
scale_curve = SubResource("CurveTexture_gud6y")
alpha_curve = SubResource("CurveTexture_o3arm")
[sub_resource type="QuadMesh" id="QuadMesh_tbk35"]
size = Vector2(8, 8)
orientation = 1
[sub_resource type="Gradient" id="Gradient_bqkcx"]
offsets = PackedFloat32Array(0.29558, 1)
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_haqe0"]
gradient = SubResource("Gradient_bqkcx")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_rmi04"]
noise_type = 2
frequency = 0.02
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_1gfff"]
invert = true
seamless = true
seamless_blend_skirt = 1.0
noise = SubResource("FastNoiseLite_rmi04")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_1gfff"]
render_priority = 0
shader = ExtResource("6_haqe0")
shader_parameter/mask_texture = SubResource("GradientTexture2D_haqe0")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_1gfff")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 1
[sub_resource type="Curve" id="Curve_lnkdc"]
_data = [Vector2(0, 0), 0.0, 1.01211, 0, 0, Vector2(1, 1), 0.977263, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_37nkj"]
curve = SubResource("Curve_lnkdc")
[sub_resource type="Gradient" id="Gradient_nk5kr"]
colors = PackedColorArray(0, 0, 0, 1, 1, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_tbk35"]
gradient = SubResource("Gradient_nk5kr")
[sub_resource type="Curve" id="Curve_h88cn"]
_limits = [0.0, 3.0, 0.0, 1.0]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_qfevt"]
curve = SubResource("Curve_h88cn")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_dswvj"]
spread = 180.0
flatness = 0.8
initial_velocity_min = 2.0
initial_velocity_max = 4.0
gravity = Vector3(0, 1, 0)
damping_min = 1.0
damping_max = 2.0
scale_over_velocity_curve = SubResource("CurveTexture_qfevt")
color_initial_ramp = SubResource("GradientTexture1D_tbk35")
alpha_curve = SubResource("CurveTexture_37nkj")
[sub_resource type="QuadMesh" id="QuadMesh_h88cn"]
size = Vector2(4, 4)
[sub_resource type="Animation" id="Animation_8n8gd"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Smoke:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Core:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Rings:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Sparks:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Decal:emission_energy")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Dust:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_sadvm"]
resource_name = "main"
length = 1.2
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Smoke:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0.1),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Core:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Rings:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Sparks:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.1),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 1.05, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Decal:emission_energy")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 1.05, 1.2),
"transitions": PackedFloat32Array(3.86374, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Dust:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 1.05, 1.2),
"transitions": PackedFloat32Array(0.6, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_8n8gd"]
_data = {
&"RESET": SubResource("Animation_8n8gd"),
&"main": SubResource("Animation_sadvm")
}
[node name="VFXExplosion_02" type="Node3D"]
script = ExtResource("1_cdqbm")
primary_color = Color(1, 0.294118, 0.0666667, 1)
secondary_color = Color(0.713726, 0.192157, 0, 1)
tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
light_color = Color(1, 0.294118, 0.0666667, 1)
light_energy = 12.0
[node name="Core" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_bdwyf")
emitting = false
amount = 2
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_sadvm")
draw_pass_1 = SubResource("SphereMesh_cdqbm")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_bqkcx")
emitting = false
amount = 16
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_1gfff")
draw_pass_1 = SubResource("SphereMesh_lnkdc")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_cdqbm")
emitting = false
amount = 32
lifetime = 0.4
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_bqkcx")
draw_pass_1 = SubResource("QuadMesh_rmi04")
[node name="Rings" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_haqe0")
emitting = false
amount = 1
one_shot = true
explosiveness = 0.9
process_material = SubResource("ParticleProcessMaterial_lnkdc")
draw_pass_1 = SubResource("QuadMesh_tbk35")
[node name="Dust" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_1gfff")
emitting = false
amount = 16
one_shot = true
explosiveness = 0.9
process_material = SubResource("ParticleProcessMaterial_dswvj")
draw_pass_1 = SubResource("QuadMesh_h88cn")
[node name="Decal" type="Decal" parent="."]
size = Vector3(4, 4, 4)
texture_albedo = ExtResource("6_bdwyf")
texture_emission = ExtResource("7_haqe0")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.294118, 0.0666667, 1)
light_energy = 12.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("9_bqkcx")
base_energy = 12.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_8n8gd")
}

View File

@@ -0,0 +1,520 @@
[gd_scene load_steps=54 format=3 uid="uid://cdsloy1kvhikp"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_bprbm"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_enhek"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="2_1bdqt"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://experimental/BinbunVFX/shared/texture/cracks_01.png" id="4_1bdqt"]
[ext_resource type="Shader" uid="uid://ccd4kg68n7uox" path="res://experimental/BinbunVFX/impact_explosions/src/shader/basic_billboard.gdshader" id="4_t82mc"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://experimental/BinbunVFX/shared/texture/cracks_emission_01.png" id="5_t82mc"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/BinbunVFX/shared/script/vfx_light.gd" id="7_j37f4"]
[sub_resource type="Gradient" id="Gradient_bprbm"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_1bdqt"]
noise_type = 0
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
fractal_weighted_strength = 0.66
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_1bdqt"]
noise = SubResource("FastNoiseLite_1bdqt")
color_ramp = SubResource("Gradient_bprbm")
seamless = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_j37f4"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_bprbm")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_1bdqt")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_fejmr"]
_data = [Vector2(0, 0), 0.0, 0.10399, 0, 0, Vector2(0.159574, 0.119442), 1.68494, 1.68494, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_t82mc"]
curve = SubResource("Curve_fejmr")
[sub_resource type="Curve" id="Curve_bprbm"]
_data = [Vector2(0, 0.516029), 0.0, 7.81198, 0, 0, Vector2(0.167553, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_j37f4"]
curve = SubResource("Curve_bprbm")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_fl6r8"]
emission_shape = 2
emission_sphere_radius = 0.2
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.9
scale_curve = SubResource("CurveTexture_j37f4")
alpha_curve = SubResource("CurveTexture_t82mc")
[sub_resource type="SphereMesh" id="SphereMesh_7ufuy"]
radius = 1.5
height = 3.0
[sub_resource type="FastNoiseLite" id="FastNoiseLite_yg62c"]
seed = 2
fractal_type = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_y5lyb"]
noise = SubResource("FastNoiseLite_yg62c")
seamless = true
normalize = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_px8k0"]
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_frequency = 0.005
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_w0g5g"]
width = 128
height = 128
noise = SubResource("FastNoiseLite_px8k0")
seamless = true
invert = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_fyady"]
render_priority = 0
shader = ExtResource("2_1bdqt")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_w0g5g")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_y5lyb")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_746ga"]
_data = [Vector2(0, 1), 0.0, -0.977263, 0, 0, Vector2(1, 0), -0.983939, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_tppqa"]
curve = SubResource("Curve_746ga")
[sub_resource type="Gradient" id="Gradient_y54ao"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 0.47451, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_fu1kj"]
gradient = SubResource("Gradient_y54ao")
[sub_resource type="Gradient" id="Gradient_bspu6"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_fejmr"]
gradient = SubResource("Gradient_bspu6")
[sub_resource type="Curve" id="Curve_31ka1"]
_data = [Vector2(0, 0), 0.0, 6.16298, 0, 0, Vector2(0.49734, 1), 0.299862, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_8ijvx"]
curve = SubResource("Curve_31ka1")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_gt25t"]
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 1.0
initial_velocity_min = 2.0
initial_velocity_max = 4.0
gravity = Vector3(0, 0, 0)
damping_min = 5.0
damping_max = 10.0
scale_min = 0.7
scale_curve = SubResource("CurveTexture_8ijvx")
color_ramp = SubResource("GradientTexture1D_fejmr")
color_initial_ramp = SubResource("GradientTexture1D_fu1kj")
alpha_curve = SubResource("CurveTexture_tppqa")
[sub_resource type="SphereMesh" id="SphereMesh_bprbm"]
radius = 1.4
height = 2.8
radial_segments = 32
rings = 16
[sub_resource type="Curve" id="Curve_6us3o"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.03089, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_enhek"]
curve = SubResource("Curve_6us3o")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_j37f4"]
particle_flag_rotate_y = true
spread = 180.0
initial_velocity_min = 1.0
initial_velocity_max = 2.0
gravity = Vector3(0, 0, 0)
scale_min = 0.4
alpha_curve = SubResource("CurveTexture_enhek")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6us3o"]
transparency = 2
alpha_scissor_threshold = 0.5
alpha_antialiasing_mode = 0
blend_mode = 1
vertex_color_use_as_albedo = true
emission_enabled = true
emission = Color(1, 1, 1, 1)
emission_energy_multiplier = 2.0
[sub_resource type="SphereMesh" id="SphereMesh_enhek"]
material = SubResource("StandardMaterial3D_6us3o")
radius = 0.05
height = 3.0
radial_segments = 32
rings = 16
is_hemisphere = true
[sub_resource type="Gradient" id="Gradient_j37f4"]
offsets = PackedFloat32Array(0.29558, 1)
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_csir3"]
gradient = SubResource("Gradient_j37f4")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_y5lyb"]
noise_type = 2
frequency = 0.02
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_85p3d"]
noise = SubResource("FastNoiseLite_y5lyb")
seamless = true
invert = true
seamless_blend_skirt = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_w0g5g"]
render_priority = 0
shader = ExtResource("4_t82mc")
shader_parameter/mask_texture = SubResource("GradientTexture2D_csir3")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_85p3d")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_t82mc"]
_data = [Vector2(0, 0), 0.0, 1.01211, 0, 0, Vector2(1, 1), 0.977263, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_y5lyb"]
curve = SubResource("Curve_t82mc")
[sub_resource type="Gradient" id="Gradient_w0g5g"]
colors = PackedColorArray(0, 0, 0, 1, 1, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_tppqa"]
gradient = SubResource("Gradient_w0g5g")
[sub_resource type="Curve" id="Curve_fu1kj"]
_limits = [0.0, 3.0, 0.0, 1.0]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_fejmr"]
curve = SubResource("Curve_fu1kj")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_8ijvx"]
spread = 180.0
flatness = 0.8
initial_velocity_min = 1.0
initial_velocity_max = 3.0
gravity = Vector3(0, 1, 0)
damping_min = 1.0
damping_max = 2.0
scale_over_velocity_curve = SubResource("CurveTexture_fejmr")
color_initial_ramp = SubResource("GradientTexture1D_tppqa")
alpha_curve = SubResource("CurveTexture_y5lyb")
[sub_resource type="QuadMesh" id="QuadMesh_yg62c"]
size = Vector2(4, 4)
[sub_resource type="Animation" id="Animation_bprbm"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Spikes:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:emission_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Dust:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Light:light_multiplier")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_v7cek"]
resource_name = "main"
length = 1.2
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0.0666667),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Spikes:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:emission_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.8, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.8, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Dust:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Light:light_multiplier")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0, 0.8, 1.2),
"transitions": PackedFloat32Array(0.6, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_1ahis"]
_data = {
&"RESET": SubResource("Animation_bprbm"),
&"main": SubResource("Animation_v7cek")
}
[node name="VFXExplosion_03" type="Node3D"]
script = ExtResource("1_enhek")
primary_color = Color(1, 0.529412, 0, 1)
secondary_color = Color(1, 0.337255, 0, 1)
tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
light_color = Color(1, 0.529412, 0, 1)
light_energy = 8.0
[node name="Core" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_j37f4")
emitting = false
amount = 1
lifetime = 0.7
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_fl6r8")
draw_pass_1 = SubResource("SphereMesh_7ufuy")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_fyady")
emitting = false
amount = 4
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_gt25t")
draw_pass_1 = SubResource("SphereMesh_bprbm")
[node name="Spikes" type="GPUParticles3D" parent="."]
layers = 540672
emitting = false
amount = 16
lifetime = 0.2
one_shot = true
explosiveness = 1.0
transform_align = 2
process_material = SubResource("ParticleProcessMaterial_j37f4")
draw_pass_1 = SubResource("SphereMesh_enhek")
[node name="Dust" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_w0g5g")
emitting = false
one_shot = true
explosiveness = 0.9
process_material = SubResource("ParticleProcessMaterial_8ijvx")
draw_pass_1 = SubResource("QuadMesh_yg62c")
[node name="Decal" type="Decal" parent="."]
size = Vector3(4, 4, 4)
texture_albedo = ExtResource("4_1bdqt")
texture_emission = ExtResource("5_t82mc")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.529412, 0, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("7_j37f4")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_1ahis")
}
autoplay = "main"

View File

@@ -0,0 +1,419 @@
[gd_scene load_steps=43 format=3 uid="uid://cl82y5gxnb8d6"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_gkc2v"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_k4fxl"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="2_ppd7v"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://experimental/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="3_f3136"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://experimental/BinbunVFX/shared/texture/cracks_01.png" id="4_g57xf"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://experimental/BinbunVFX/shared/texture/cracks_emission_01.png" id="5_gkc2v"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/BinbunVFX/shared/script/vfx_light.gd" id="7_3n50y"]
[sub_resource type="Gradient" id="Gradient_ppd7v"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_f3136"]
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
fractal_weighted_strength = 0.66
domain_warp_enabled = true
domain_warp_amplitude = 19.465
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 1
domain_warp_fractal_lacunarity = 6.89
domain_warp_fractal_gain = 0.765
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_m2d33"]
noise = SubResource("FastNoiseLite_f3136")
color_ramp = SubResource("Gradient_ppd7v")
seamless = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_g57xf"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_k4fxl")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_m2d33")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_gkc2v"]
_data = [Vector2(0, 0), 0.0, 0.10399, 0, 0, Vector2(0.159574, 0.119442), 1.68494, 1.68494, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_3n50y"]
curve = SubResource("Curve_gkc2v")
[sub_resource type="Curve" id="Curve_lt01u"]
_data = [Vector2(0, 0.516029), 0.0, 7.81198, 0, 0, Vector2(0.167553, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_13ab5"]
curve = SubResource("Curve_lt01u")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_8n3be"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.9
scale_curve = SubResource("CurveTexture_13ab5")
alpha_curve = SubResource("CurveTexture_3n50y")
[sub_resource type="SphereMesh" id="SphereMesh_hvte5"]
radius = 0.6
height = 1.2
[sub_resource type="FastNoiseLite" id="FastNoiseLite_m2d33"]
noise_type = 0
seed = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_g57xf"]
noise = SubResource("FastNoiseLite_m2d33")
seamless = true
normalize = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_gkc2v"]
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_frequency = 0.005
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_3n50y"]
width = 128
height = 128
noise = SubResource("FastNoiseLite_gkc2v")
seamless = true
invert = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lt01u"]
render_priority = 0
shader = ExtResource("2_ppd7v")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_3n50y")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_g57xf")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_3n50y"]
_data = [Vector2(0, 1), 0.0, -0.69537, 0, 0, Vector2(1, 0), -0.685899, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_lt01u"]
curve = SubResource("Curve_3n50y")
[sub_resource type="Gradient" id="Gradient_13ab5"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 0.47451, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_8n3be"]
gradient = SubResource("Gradient_13ab5")
[sub_resource type="Gradient" id="Gradient_hvte5"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_kxca7"]
gradient = SubResource("Gradient_hvte5")
[sub_resource type="Curve" id="Curve_34yqr"]
_data = [Vector2(0, 0.206825), 0.0, 1.8623, 0, 0, Vector2(1, 1), 0.143345, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_6iprs"]
curve = SubResource("Curve_34yqr")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_f2s7u"]
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 1.0
initial_velocity_max = 1.0
gravity = Vector3(0, 0, 0)
damping_min = 5.0
damping_max = 10.0
scale_max = 1.2
scale_curve = SubResource("CurveTexture_6iprs")
color_ramp = SubResource("GradientTexture1D_kxca7")
color_initial_ramp = SubResource("GradientTexture1D_8n3be")
alpha_curve = SubResource("CurveTexture_lt01u")
[sub_resource type="SphereMesh" id="SphereMesh_13ab5"]
radius = 1.6
height = 2.2
radial_segments = 32
rings = 16
[sub_resource type="Gradient" id="Gradient_f3136"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_m2d33"]
gradient = SubResource("Gradient_f3136")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_gkc2v"]
render_priority = 0
shader = ExtResource("3_f3136")
shader_parameter/shape_texture = SubResource("GradientTexture2D_m2d33")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/secondary_color = Color(1, 0.337255, 0, 1)
[sub_resource type="Curve" id="Curve_13ab5"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_8n3be"]
curve = SubResource("Curve_13ab5")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_hvte5"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
spread = 180.0
initial_velocity_min = 10.0
initial_velocity_max = 15.0
damping_min = 15.0
damping_max = 20.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_8n3be")
[sub_resource type="QuadMesh" id="QuadMesh_kxca7"]
size = Vector2(0.05, 0.4)
[sub_resource type="Animation" id="Animation_ppd7v"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Sparks:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:emission_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Light:light_multiplier")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_k4fxl"]
resource_name = "main"
length = 1.2
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0.0666667),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Sparks:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:emission_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.8, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.8, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Light:light_multiplier")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_ppd7v"]
_data = {
&"RESET": SubResource("Animation_ppd7v"),
&"main": SubResource("Animation_k4fxl")
}
[node name="VFXExplosion_04" type="Node3D"]
script = ExtResource("1_gkc2v")
primary_color = Color(1, 0.529412, 0, 1)
secondary_color = Color(1, 0.337255, 0, 1)
tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
light_color = Color(1, 0.529412, 0, 1)
[node name="Core" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_g57xf")
emitting = false
amount = 1
lifetime = 0.8
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_8n3be")
draw_pass_1 = SubResource("SphereMesh_hvte5")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_lt01u")
emitting = false
amount = 3
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_f2s7u")
draw_pass_1 = SubResource("SphereMesh_13ab5")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_gkc2v")
emitting = false
amount = 16
lifetime = 0.4
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_hvte5")
draw_pass_1 = SubResource("QuadMesh_kxca7")
[node name="Decal" type="Decal" parent="."]
sorting_offset = -1.0
texture_albedo = ExtResource("4_g57xf")
texture_emission = ExtResource("5_gkc2v")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.529412, 0, 1)
light_energy = 4.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("7_3n50y")
base_energy = 4.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_ppd7v")
}

View File

@@ -0,0 +1,417 @@
[gd_scene load_steps=43 format=3 uid="uid://shl0iw1x775r"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_pc1m8"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_vxewg"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="2_vxewg"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="3_wbyke"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="4_ro6ym"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="5_c84e7"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="6_xgs5v"]
[sub_resource type="Gradient" id="Gradient_pc1m8"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_vxewg"]
frequency = 0.003
fractal_type = 2
fractal_octaves = 2
fractal_weighted_strength = 0.66
domain_warp_enabled = true
domain_warp_amplitude = 19.465
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 1
domain_warp_fractal_lacunarity = 6.89
domain_warp_fractal_gain = 0.765
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_vxewg"]
seamless = true
color_ramp = SubResource("Gradient_pc1m8")
noise = SubResource("FastNoiseLite_vxewg")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ro6ym"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_pc1m8")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_vxewg")
shader_parameter/primary_color = Color(0.890196, 0.627451, 0.0901961, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_tgerl"]
_data = [Vector2(0, 0), 0.0, 0.10399, 0, 0, Vector2(0.159574, 0.119442), 1.68494, 1.68494, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_wbyke"]
curve = SubResource("Curve_tgerl")
[sub_resource type="Curve" id="Curve_qarha"]
_data = [Vector2(0, 0.516029), 0.0, 7.81198, 0, 0, Vector2(0.167553, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_ro6ym"]
curve = SubResource("Curve_qarha")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_jilrt"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.9
scale_curve = SubResource("CurveTexture_ro6ym")
alpha_curve = SubResource("CurveTexture_wbyke")
[sub_resource type="SphereMesh" id="SphereMesh_6lo2p"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_pc1m8"]
noise_type = 0
seed = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_c84e7"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_pc1m8")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_wbyke"]
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_frequency = 0.005
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_xgs5v"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_wbyke")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_c84e7"]
render_priority = 0
shader = ExtResource("2_vxewg")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_xgs5v")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_c84e7")
shader_parameter/primary_color = Color(0.890196, 0.627451, 0.0901961, 1)
shader_parameter/tertiary_color = Color(0.215686, 0.215686, 0.180392, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 0.3
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 1
[sub_resource type="Curve" id="Curve_pc1m8"]
_data = [Vector2(0, 1), 0.0, -0.69537, 0, 0, Vector2(1, 0), -0.685899, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_nmq2e"]
curve = SubResource("Curve_pc1m8")
[sub_resource type="Gradient" id="Gradient_wbyke"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 0.47451, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_frsf8"]
gradient = SubResource("Gradient_wbyke")
[sub_resource type="Gradient" id="Gradient_c84e7"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_ifykw"]
gradient = SubResource("Gradient_c84e7")
[sub_resource type="Curve" id="Curve_nmq2e"]
_data = [Vector2(0, 0.206825), 0.0, 1.8623, 0, 0, Vector2(1, 1), 0.143345, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_tgerl"]
curve = SubResource("Curve_nmq2e")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ifykw"]
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 1.0
initial_velocity_max = 1.0
gravity = Vector3(0, 0, 0)
damping_min = 5.0
damping_max = 10.0
scale_max = 1.2
scale_curve = SubResource("CurveTexture_tgerl")
color_ramp = SubResource("GradientTexture1D_ifykw")
color_initial_ramp = SubResource("GradientTexture1D_frsf8")
alpha_curve = SubResource("CurveTexture_nmq2e")
[sub_resource type="SphereMesh" id="SphereMesh_tgerl"]
radius = 0.8
height = 1.6
radial_segments = 32
rings = 16
[sub_resource type="Gradient" id="Gradient_vxewg"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_q21nm"]
gradient = SubResource("Gradient_vxewg")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_xgs5v"]
render_priority = 0
shader = ExtResource("3_wbyke")
shader_parameter/shape_texture = SubResource("GradientTexture2D_q21nm")
shader_parameter/primary_color = Color(0.890196, 0.627451, 0.0901961, 1)
shader_parameter/secondary_color = Color(0.890196, 0, 0.152941, 1)
[sub_resource type="Curve" id="Curve_vxewg"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_qarha"]
curve = SubResource("Curve_vxewg")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ro6ym"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
spread = 180.0
initial_velocity_min = 5.0
initial_velocity_max = 10.0
damping_min = 15.0
damping_max = 20.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_qarha")
[sub_resource type="QuadMesh" id="QuadMesh_pc1m8"]
size = Vector2(0.05, 0.4)
[sub_resource type="Animation" id="Animation_vxewg"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Sparks:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Light:light_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:emission_energy")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Decal:albedo_mix")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_pc1m8"]
resource_name = "main"
length = 1.2
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Sparks:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Light:light_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.5, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:emission_energy")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.5, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Decal:albedo_mix")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 0.5, 1.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_vxewg"]
_data = {
&"RESET": SubResource("Animation_vxewg"),
&"main": SubResource("Animation_pc1m8")
}
[node name="VFXExplosion_05" type="Node3D"]
script = ExtResource("1_vxewg")
primary_color = Color(0.890196, 0.627451, 0.0901961, 1)
secondary_color = Color(0.890196, 0, 0.152941, 1)
tertiary_color = Color(0.215686, 0.215686, 0.180392, 1)
light_color = Color(0.890196, 0.627451, 0.0901961, 1)
[node name="Core" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_ro6ym")
emitting = false
amount = 1
lifetime = 0.8
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_jilrt")
draw_pass_1 = SubResource("SphereMesh_6lo2p")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_c84e7")
emitting = false
amount = 3
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_ifykw")
draw_pass_1 = SubResource("SphereMesh_tgerl")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_xgs5v")
emitting = false
lifetime = 0.4
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_ro6ym")
draw_pass_1 = SubResource("QuadMesh_pc1m8")
[node name="Decal" type="Decal" parent="."]
sorting_offset = -1.0
size = Vector3(1, 1, 1)
texture_albedo = ExtResource("4_ro6ym")
texture_emission = ExtResource("5_c84e7")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(0.890196, 0.627451, 0.0901961, 1)
light_energy = 4.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("6_xgs5v")
base_energy = 4.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_vxewg")
}

View File

@@ -0,0 +1,418 @@
[gd_scene load_steps=43 format=3 uid="uid://bjru1p8jhdp1b"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_dfkn5"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_dmlm6"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="2_dmlm6"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="3_h53b0"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="4_pnhd3"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="5_abayo"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="6_c2dwc"]
[sub_resource type="Gradient" id="Gradient_5fu0g"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_v16vn"]
fractal_type = 2
fractal_octaves = 2
fractal_weighted_strength = 0.66
domain_warp_enabled = true
domain_warp_amplitude = 19.465
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 1
domain_warp_fractal_lacunarity = 6.89
domain_warp_fractal_gain = 0.765
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_88mbr"]
seamless = true
color_ramp = SubResource("Gradient_5fu0g")
noise = SubResource("FastNoiseLite_v16vn")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_mf8nh"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_dfkn5")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_88mbr")
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_ncnyg"]
_data = [Vector2(0, 0), 0.0, 0.10399, 0, 0, Vector2(0.159574, 0.119442), 1.68494, 1.68494, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_sw7kb"]
curve = SubResource("Curve_ncnyg")
[sub_resource type="Curve" id="Curve_6s1rp"]
_data = [Vector2(0, 0.516029), 0.0, 7.81198, 0, 0, Vector2(0.167553, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_8cxy7"]
curve = SubResource("Curve_6s1rp")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_p7tmq"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.9
scale_curve = SubResource("CurveTexture_8cxy7")
alpha_curve = SubResource("CurveTexture_sw7kb")
[sub_resource type="SphereMesh" id="SphereMesh_pf3f7"]
radius = 0.8
height = 0.7
[sub_resource type="FastNoiseLite" id="FastNoiseLite_jrygr"]
noise_type = 0
seed = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_38x4d"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_jrygr")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_5dj1p"]
frequency = 0.005
fractal_type = 2
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_frequency = 0.005
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_wvci1"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_5dj1p")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_x22jd"]
render_priority = 0
shader = ExtResource("2_dmlm6")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_wvci1")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_38x4d")
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/tertiary_color = Color(0, 0, 0, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 0.3
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 1
[sub_resource type="Curve" id="Curve_dfkn5"]
_data = [Vector2(0, 1), 0.0, -0.69537, 0, 0, Vector2(1, 0), -0.685899, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_dmlm6"]
curve = SubResource("Curve_dfkn5")
[sub_resource type="Gradient" id="Gradient_h53b0"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 0.47451, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_pnhd3"]
gradient = SubResource("Gradient_h53b0")
[sub_resource type="Gradient" id="Gradient_abayo"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_c2dwc"]
gradient = SubResource("Gradient_abayo")
[sub_resource type="Curve" id="Curve_5fu0g"]
_data = [Vector2(0, 0.206825), 0.0, 1.8623, 0, 0, Vector2(1, 1), 0.143345, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_v16vn"]
curve = SubResource("Curve_5fu0g")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_88mbr"]
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 1.0
initial_velocity_max = 1.0
gravity = Vector3(0, 0, 0)
damping_min = 5.0
damping_max = 10.0
scale_max = 1.2
scale_curve = SubResource("CurveTexture_v16vn")
color_ramp = SubResource("GradientTexture1D_c2dwc")
color_initial_ramp = SubResource("GradientTexture1D_pnhd3")
alpha_curve = SubResource("CurveTexture_dmlm6")
[sub_resource type="SphereMesh" id="SphereMesh_1k8gh"]
radius = 1.2
height = 1.6
radial_segments = 32
rings = 16
[sub_resource type="Gradient" id="Gradient_dfkn5"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_dmlm6"]
gradient = SubResource("Gradient_dfkn5")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_h53b0"]
render_priority = 0
shader = ExtResource("3_h53b0")
shader_parameter/shape_texture = SubResource("GradientTexture2D_dmlm6")
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/secondary_color = Color(1, 0, 0, 1)
[sub_resource type="Curve" id="Curve_pnhd3"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_abayo"]
curve = SubResource("Curve_pnhd3")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_c2dwc"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 0.854
initial_velocity_min = 10.0
initial_velocity_max = 20.0
damping_min = 15.0
damping_max = 20.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_abayo")
[sub_resource type="QuadMesh" id="QuadMesh_5fu0g"]
size = Vector2(0.05, 0.4)
[sub_resource type="Animation" id="Animation_dmlm6"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Sparks:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:emission_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Light:light_multiplier")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_dfkn5"]
resource_name = "main"
length = 1.2
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Smoke:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Sparks:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Decal:emission_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.6),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [4.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Decal:albedo_mix")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.6),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Light:light_multiplier")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 0.599737),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_dmlm6"]
_data = {
&"RESET": SubResource("Animation_dmlm6"),
&"main": SubResource("Animation_dfkn5")
}
[node name="VFXExplosion_06" type="Node3D"]
script = ExtResource("1_dmlm6")
primary_color = Color(1, 1, 0, 1)
secondary_color = Color(1, 0, 0, 1)
[node name="Core" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_mf8nh")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_p7tmq")
draw_pass_1 = SubResource("SphereMesh_pf3f7")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_x22jd")
emitting = false
amount = 3
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_88mbr")
draw_pass_1 = SubResource("SphereMesh_1k8gh")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_h53b0")
emitting = false
amount = 16
lifetime = 0.4
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_c2dwc")
draw_pass_1 = SubResource("QuadMesh_5fu0g")
[node name="Decal" type="Decal" parent="."]
sorting_offset = -1.0
size = Vector3(1, 1, 1)
texture_albedo = ExtResource("4_pnhd3")
texture_emission = ExtResource("5_abayo")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(0.890196, 0.627451, 0.0901961, 1)
light_energy = 4.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("6_c2dwc")
base_energy = 4.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_dmlm6")
}

View File

@@ -0,0 +1,341 @@
[gd_scene load_steps=34 format=3 uid="uid://ri1dspbxt43r"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_ivu3w"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_v574d"]
[ext_resource type="Texture2D" uid="uid://i6dlldk10la7" path="res://assets/BinbunVFX/shared/texture/flash/flash_04.png" id="2_yt271"]
[ext_resource type="Texture2D" uid="uid://bqqrfrrd5f7kq" path="res://assets/BinbunVFX/shared/texture/flash/flash_03.png" id="3_ivu3w"]
[ext_resource type="Shader" uid="uid://d4eb3cue1817u" path="res://assets/BinbunVFX/impact_explosions/src/shader/glow.gdshader" id="4_hylye"]
[ext_resource type="Texture2D" uid="uid://hxi4xo7j57d7" path="res://assets/BinbunVFX/shared/texture/flare/flare_01.png" id="5_aiijp"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="7_eoult"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_xfhs0"]
render_priority = 0
shader = ExtResource("1_ivu3w")
shader_parameter/mask_texture = ExtResource("2_yt271")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.847059, 0, 1)
shader_parameter/secondary_color = Color(1, 0.290196, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_yt271"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_eoult"]
curve = SubResource("Curve_yt271")
[sub_resource type="Curve" id="Curve_ivu3w"]
_data = [Vector2(0, 1), 0.0, 0.032534, 0, 0, Vector2(1, 0.696629), -1.17373, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_80dxi"]
curve = SubResource("Curve_ivu3w")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_eoult"]
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_80dxi")
alpha_curve = SubResource("CurveTexture_eoult")
[sub_resource type="QuadMesh" id="QuadMesh_80dxi"]
size = Vector2(2, 2)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ivu3w"]
render_priority = 0
shader = ExtResource("1_ivu3w")
shader_parameter/mask_texture = ExtResource("3_ivu3w")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.847059, 0, 1)
shader_parameter/secondary_color = Color(1, 0.290196, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_hylye"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_87miy"]
curve = SubResource("Curve_hylye")
[sub_resource type="Curve" id="Curve_aiijp"]
_data = [Vector2(0, 1), 0.0, -0.125756, 0, 0, Vector2(1, 0.41573), -1.2228, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_jvs7g"]
curve = SubResource("Curve_aiijp")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_80dxi"]
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_jvs7g")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_87miy")
[sub_resource type="QuadMesh" id="QuadMesh_87miy"]
size = Vector2(3, 3)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="ShaderMaterial" id="ShaderMaterial_hylye"]
render_priority = 0
shader = ExtResource("1_ivu3w")
shader_parameter/mask_texture = ExtResource("5_aiijp")
shader_parameter/edge_smoothness = 1.0
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.847059, 0, 1)
shader_parameter/secondary_color = Color(1, 0.290196, 0, 1)
shader_parameter/billboard = false
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_eoult"]
_data = [Vector2(0, 0.393258), 0.0, -1.11523, 0, 0, Vector2(1, 0), -0.171187, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_p1hel"]
curve = SubResource("Curve_eoult")
[sub_resource type="Curve" id="Curve_l64xe"]
_data = [Vector2(0, 0.47191), 0.0, 1.45318, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_l64xe"]
curve = SubResource("Curve_l64xe")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_aqjj4"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 10.0
initial_velocity_min = -0.1
initial_velocity_max = 0.1
gravity = Vector3(0, 0, 0)
scale_min = 0.6
scale_max = 1.1
scale_curve = SubResource("CurveTexture_l64xe")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_p1hel")
[sub_resource type="QuadMesh" id="QuadMesh_v574d"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
orientation = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_aiijp"]
render_priority = 0
shader = ExtResource("4_hylye")
shader_parameter/primary_color = Color(1, 0.847059, 0, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="SphereMesh" id="SphereMesh_ivu3w"]
radius = 2.0
height = 4.0
radial_segments = 32
rings = 16
[sub_resource type="Animation" id="Animation_ivu3w"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_yt271"]
resource_name = "main"
length = 0.8
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.5, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.5, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_ivu3w"]
_data = {
&"RESET": SubResource("Animation_ivu3w"),
&"main": SubResource("Animation_yt271")
}
[node name="VFXHit_01" type="Node3D"]
script = ExtResource("1_v574d")
primary_color = Color(1, 0.847059, 0, 1)
secondary_color = Color(1, 0.290196, 0, 1)
light_color = Color(1, 1, 0.541176, 1)
light_energy = 2.0
[node name="Hit_01" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_xfhs0")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
explosiveness = 0.6
process_material = SubResource("ParticleProcessMaterial_eoult")
draw_pass_1 = SubResource("QuadMesh_80dxi")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_ivu3w")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
process_material = SubResource("ParticleProcessMaterial_80dxi")
draw_pass_1 = SubResource("QuadMesh_87miy")
[node name="Flare_01" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_hylye")
emitting = false
amount = 1
lifetime = 0.6
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_aqjj4")
draw_pass_1 = SubResource("QuadMesh_v574d")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
sorting_offset = -2.0
material_override = SubResource("ShaderMaterial_aiijp")
mesh = SubResource("SphereMesh_ivu3w")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 1, 0.541176, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("7_eoult")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_ivu3w")
}

View File

@@ -0,0 +1,347 @@
[gd_scene load_steps=35 format=3 uid="uid://se15ow6u0q0m"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_3o1ib"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_fnjpx"]
[ext_resource type="Texture2D" uid="uid://cjkuadylsfid1" path="res://assets/BinbunVFX/shared/texture/flash/flash_02.png" id="2_3mt8j"]
[ext_resource type="Texture2D" uid="uid://6n72xg2cgxx2" path="res://assets/BinbunVFX/shared/texture/flare/flare_04.png" id="3_m0fyp"]
[ext_resource type="Shader" uid="uid://d4eb3cue1817u" path="res://assets/BinbunVFX/impact_explosions/src/shader/glow.gdshader" id="5_jqm4h"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="6_mmwga"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_fnjpx"]
render_priority = 0
shader = ExtResource("1_fnjpx")
shader_parameter/mask_texture = ExtResource("2_3mt8j")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0.686275, 1)
shader_parameter/secondary_color = Color(1, 0.580392, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_3o1ib"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_y1jqx"]
curve = SubResource("Curve_3o1ib")
[sub_resource type="Curve" id="Curve_0sv8k"]
_data = [Vector2(0, 1), 0.0, -0.235651, 0, 0, Vector2(1, 0.213483), -1.0667, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_jqm4h"]
curve = SubResource("Curve_0sv8k")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_mmwga"]
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_jqm4h")
alpha_curve = SubResource("CurveTexture_y1jqx")
[sub_resource type="QuadMesh" id="QuadMesh_caueu"]
size = Vector2(1.5, 1.5)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="ShaderMaterial" id="ShaderMaterial_m0fyp"]
render_priority = 0
shader = ExtResource("1_fnjpx")
shader_parameter/mask_texture = ExtResource("2_3mt8j")
shader_parameter/edge_smoothness = 1.0
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0.686275, 1)
shader_parameter/secondary_color = Color(1, 0.580392, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_fnjpx"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_3o1ib"]
curve = SubResource("Curve_fnjpx")
[sub_resource type="Curve" id="Curve_y1jqx"]
_data = [Vector2(0, 0.775281), 0.0, 1.24559, 0, 0, Vector2(1, 0.269663), -1.51924, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_0sv8k"]
curve = SubResource("Curve_y1jqx")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_jqm4h"]
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_0sv8k")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_3o1ib")
[sub_resource type="QuadMesh" id="QuadMesh_mmwga"]
size = Vector2(2.5, 2.5)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3o1ib"]
render_priority = 0
shader = ExtResource("1_fnjpx")
shader_parameter/mask_texture = ExtResource("3_m0fyp")
shader_parameter/edge_smoothness = 1.0
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0.686275, 1)
shader_parameter/secondary_color = Color(1, 0.580392, 0, 1)
shader_parameter/billboard = false
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_m0fyp"]
_data = [Vector2(0, 1), 0.0, -1.11523, 0, 0, Vector2(1, 0), -0.171187, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_fnjpx"]
curve = SubResource("Curve_m0fyp")
[sub_resource type="Gradient" id="Gradient_fnjpx"]
colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_3o1ib"]
gradient = SubResource("Gradient_fnjpx")
[sub_resource type="Curve" id="Curve_jqm4h"]
_data = [Vector2(0, 0.47191), 0.0, 1.01723, 0, 0, Vector2(1, 1), 0.181648, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_mmwga"]
curve = SubResource("Curve_jqm4h")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_caueu"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 20.0
initial_velocity_min = -0.1
initial_velocity_max = 0.1
gravity = Vector3(0, 0, 0)
scale_min = 0.6
scale_max = 0.7
scale_curve = SubResource("CurveTexture_mmwga")
color = Color(0, 0, 0, 1)
color_initial_ramp = SubResource("GradientTexture1D_3o1ib")
alpha_curve = SubResource("CurveTexture_fnjpx")
[sub_resource type="QuadMesh" id="QuadMesh_nddl7"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
orientation = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_cub7k"]
render_priority = 0
shader = ExtResource("5_jqm4h")
shader_parameter/primary_color = Color(1, 1, 0.686275, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="SphereMesh" id="SphereMesh_8nm16"]
radius = 1.5
height = 3.0
radial_segments = 32
rings = 16
[sub_resource type="Animation" id="Animation_cub7k"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.6, 0.766667),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.6, 0.766667),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="Animation" id="Animation_3mt8j"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_3mt8j"]
_data = {
&"RESET": SubResource("Animation_3mt8j"),
&"main": SubResource("Animation_cub7k")
}
[node name="VFXHit_02" type="Node3D"]
script = ExtResource("1_3o1ib")
primary_color = Color(1, 1, 0.686275, 1)
secondary_color = Color(1, 0.580392, 0, 1)
light_color = Color(1, 1, 0.541176, 1)
[node name="Hit_01" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_fnjpx")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
explosiveness = 0.6
process_material = SubResource("ParticleProcessMaterial_mmwga")
draw_pass_1 = SubResource("QuadMesh_caueu")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_m0fyp")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
process_material = SubResource("ParticleProcessMaterial_jqm4h")
draw_pass_1 = SubResource("QuadMesh_mmwga")
[node name="Flare_01" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_3o1ib")
emitting = false
amount = 2
lifetime = 0.6
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_caueu")
draw_pass_1 = SubResource("QuadMesh_nddl7")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
sorting_offset = -2.0
material_override = SubResource("ShaderMaterial_cub7k")
mesh = SubResource("SphereMesh_8nm16")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 1, 0.541176, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("6_mmwga")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_3mt8j")
}

View File

@@ -0,0 +1,349 @@
[gd_scene load_steps=33 format=3 uid="uid://b40oyf32pgee"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://experimental/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_l0cbk"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_vffy1"]
[ext_resource type="Texture2D" uid="uid://bfvs2muk8b4ls" path="res://experimental/BinbunVFX/shared/texture/flare/flare_02.png" id="3_2sgsy"]
[ext_resource type="Texture2D" uid="uid://bqqrfrrd5f7kq" path="res://experimental/BinbunVFX/shared/texture/flash/flash_03.png" id="3_f52cn"]
[ext_resource type="Shader" uid="uid://d4eb3cue1817u" path="res://experimental/BinbunVFX/impact_explosions/src/shader/glow.gdshader" id="5_2w4ua"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/BinbunVFX/shared/script/vfx_light.gd" id="6_gky3u"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_l5xb5"]
render_priority = 0
shader = ExtResource("1_l0cbk")
shader_parameter/mask_texture = ExtResource("3_f52cn")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.611765, 0.0941176, 1)
shader_parameter/secondary_color = Color(0.894118, 0.101961, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = true
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_0v3x4"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_eoult"]
curve = SubResource("Curve_0v3x4")
[sub_resource type="Curve" id="Curve_ncj6l"]
_data = [Vector2(0, 1), 0.0, 0.032534, 0, 0, Vector2(1, 0.775281), -0.40554, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_80dxi"]
curve = SubResource("Curve_ncj6l")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_76mw0"]
emission_shape = 1
emission_sphere_radius = 0.1
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_min = 0.7
scale_max = 1.1
scale_curve = SubResource("CurveTexture_80dxi")
alpha_curve = SubResource("CurveTexture_eoult")
[sub_resource type="QuadMesh" id="QuadMesh_l0cbk"]
size = Vector2(1.2, 2)
subdivide_width = 16
subdivide_depth = 16
[sub_resource type="ShaderMaterial" id="ShaderMaterial_l0cbk"]
render_priority = 0
shader = ExtResource("1_l0cbk")
shader_parameter/mask_texture = ExtResource("3_f52cn")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.611765, 0.0941176, 1)
shader_parameter/secondary_color = Color(0.894118, 0.101961, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = true
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_vffy1"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_f52cn"]
curve = SubResource("Curve_vffy1")
[sub_resource type="Curve" id="Curve_w12qn"]
_data = [Vector2(0, 1), 0.0, -0.125756, 0, 0, Vector2(1, 0.775281), -0.565127, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_2w4ua"]
curve = SubResource("Curve_w12qn")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_gky3u"]
emission_shape = 1
emission_sphere_radius = 0.1
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_2w4ua")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_f52cn")
[sub_resource type="QuadMesh" id="QuadMesh_2sgsy"]
size = Vector2(3, 2)
subdivide_width = 16
subdivide_depth = 16
[sub_resource type="ShaderMaterial" id="ShaderMaterial_vffy1"]
render_priority = 0
shader = ExtResource("1_l0cbk")
shader_parameter/mask_texture = ExtResource("3_2sgsy")
shader_parameter/edge_smoothness = 1.0
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.611765, 0.0941176, 1)
shader_parameter/secondary_color = Color(0.894118, 0.101961, 0, 1)
shader_parameter/billboard = false
shader_parameter/proximity_fade = true
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_f52cn"]
_data = [Vector2(0, 0.393258), 0.0, -1.11523, 0, 0, Vector2(1, 0), -0.171187, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_w12qn"]
curve = SubResource("Curve_f52cn")
[sub_resource type="Curve" id="Curve_2w4ua"]
_data = [Vector2(0, 0.47191), 0.0, 1.45318, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_gky3u"]
curve = SubResource("Curve_2w4ua")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_l5xb5"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 180.0
initial_velocity_min = -0.1
initial_velocity_max = 0.1
gravity = Vector3(0, 0, 0)
scale_min = 0.8
scale_max = 1.2
scale_curve = SubResource("CurveTexture_gky3u")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_w12qn")
[sub_resource type="QuadMesh" id="QuadMesh_0v3x4"]
size = Vector2(3, 3)
subdivide_width = 16
subdivide_depth = 16
orientation = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_2sgsy"]
render_priority = 0
shader = ExtResource("5_2w4ua")
shader_parameter/primary_color = Color(1, 0.611765, 0.0941176, 1)
shader_parameter/proximity_fade = true
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="SphereMesh" id="SphereMesh_2sgsy"]
radius = 1.5
height = 3.0
radial_segments = 16
rings = 8
[sub_resource type="Animation" id="Animation_2sgsy"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_5dbw3"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.5, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.5, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_2sgsy"]
_data = {
&"RESET": SubResource("Animation_2sgsy"),
&"main": SubResource("Animation_5dbw3")
}
[node name="VFXHit_03" type="Node3D"]
script = ExtResource("1_vffy1")
primary_color = Color(1, 0.611765, 0.0941176, 1)
secondary_color = Color(0.894118, 0.101961, 0, 1)
light_color = Color(1, 1, 0.67451, 1)
mesh_resolutions = 16
[node name="Hit_01" type="GPUParticles3D" parent="."]
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_l5xb5")
emitting = false
amount = 2
lifetime = 0.4
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_76mw0")
draw_pass_1 = SubResource("QuadMesh_l0cbk")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_l0cbk")
emitting = false
amount = 2
lifetime = 0.4
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_gky3u")
draw_pass_1 = SubResource("QuadMesh_2sgsy")
[node name="Flare_01" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_vffy1")
emitting = false
amount = 2
lifetime = 0.4
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_l5xb5")
draw_pass_1 = SubResource("QuadMesh_0v3x4")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
sorting_offset = -2.0
material_override = SubResource("ShaderMaterial_2sgsy")
mesh = SubResource("SphereMesh_2sgsy")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 1, 0.67451, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("6_gky3u")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_2sgsy")
}

View File

@@ -0,0 +1,335 @@
[gd_scene load_steps=32 format=3 uid="uid://bbynk4p3biw83"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_g5yym"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://experimental/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_qu10d"]
[ext_resource type="Texture2D" uid="uid://i6dlldk10la7" path="res://experimental/BinbunVFX/shared/texture/flash/flash_04.png" id="2_libwh"]
[ext_resource type="Shader" uid="uid://d4eb3cue1817u" path="res://experimental/BinbunVFX/impact_explosions/src/shader/glow.gdshader" id="5_ev7fe"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/BinbunVFX/shared/script/vfx_light.gd" id="6_7aexv"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_qu10d"]
render_priority = 0
shader = ExtResource("1_qu10d")
shader_parameter/mask_texture = ExtResource("2_libwh")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/secondary_color = Color(1, 0, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_libwh"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_qu10d"]
curve = SubResource("Curve_libwh")
[sub_resource type="Curve" id="Curve_4t8w8"]
_data = [Vector2(0, 1), 0.0, 0.032534, 0, 0, Vector2(1, 0.696629), -1.17373, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_libwh"]
curve = SubResource("Curve_4t8w8")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_7aexv"]
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_libwh")
alpha_curve = SubResource("CurveTexture_qu10d")
[sub_resource type="QuadMesh" id="QuadMesh_3py1k"]
size = Vector2(2, 2)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_g5yym"]
render_priority = 0
shader = ExtResource("1_qu10d")
shader_parameter/mask_texture = ExtResource("2_libwh")
shader_parameter/edge_smoothness = 0.313559
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/secondary_color = Color(1, 0, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_qu10d"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_3bmj3"]
curve = SubResource("Curve_qu10d")
[sub_resource type="Curve" id="Curve_3bmj3"]
_data = [Vector2(0, 1), 0.0, -0.125756, 0, 0, Vector2(1, 0.41573), -1.2228, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_4t8w8"]
curve = SubResource("Curve_3bmj3")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ev7fe"]
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_4t8w8")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_3bmj3")
[sub_resource type="QuadMesh" id="QuadMesh_7aexv"]
size = Vector2(3, 3)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3py1k"]
render_priority = 0
shader = ExtResource("1_qu10d")
shader_parameter/mask_texture = ExtResource("2_libwh")
shader_parameter/edge_smoothness = 0.4
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/secondary_color = Color(1, 0, 0, 1)
shader_parameter/billboard = false
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_vs881"]
_data = [Vector2(0, 1), 0.0, -1.11523, 0, 0, Vector2(1, 0), -0.171187, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_ev7fe"]
curve = SubResource("Curve_vs881")
[sub_resource type="Curve" id="Curve_jolb0"]
_data = [Vector2(0, 0.730337), 0.0, 0.87191, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_7aexv"]
curve = SubResource("Curve_jolb0")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ke5tf"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 180.0
initial_velocity_min = -0.1
initial_velocity_max = 0.1
gravity = Vector3(0, 0, 0)
scale_min = 0.5
scale_curve = SubResource("CurveTexture_7aexv")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_ev7fe")
[sub_resource type="QuadMesh" id="QuadMesh_cyw7j"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
orientation = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_35k1s"]
render_priority = 0
shader = ExtResource("5_ev7fe")
shader_parameter/primary_color = Color(1, 1, 0, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="SphereMesh" id="SphereMesh_35k1s"]
radius = 1.5
height = 3.0
radial_segments = 32
rings = 16
[sub_resource type="Animation" id="Animation_35k1s"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_kjvwe"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Flare_01:emitting")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.4, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Light:light_multiplier")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.4, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_i65yy"]
_data = {
&"RESET": SubResource("Animation_35k1s"),
&"main": SubResource("Animation_kjvwe")
}
[node name="VFXHit_04" type="Node3D"]
script = ExtResource("1_g5yym")
primary_color = Color(1, 1, 0, 1)
secondary_color = Color(1, 0, 0, 1)
light_color = Color(1, 1, 0, 1)
[node name="Hit_01" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_qu10d")
amount = 1
lifetime = 0.4
one_shot = true
explosiveness = 0.6
process_material = SubResource("ParticleProcessMaterial_7aexv")
draw_pass_1 = SubResource("QuadMesh_3py1k")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_g5yym")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
process_material = SubResource("ParticleProcessMaterial_ev7fe")
draw_pass_1 = SubResource("QuadMesh_7aexv")
[node name="Flare_01" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_3py1k")
emitting = false
amount = 6
lifetime = 0.4
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_ke5tf")
draw_pass_1 = SubResource("QuadMesh_cyw7j")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
sorting_offset = -2.0
material_override = SubResource("ShaderMaterial_35k1s")
mesh = SubResource("SphereMesh_35k1s")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 1, 0, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("6_7aexv")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_i65yy")
}

View File

@@ -0,0 +1,348 @@
[gd_scene load_steps=35 format=3 uid="uid://vkstbs4fu60"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_5fy01"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_rqeg2"]
[ext_resource type="Texture2D" uid="uid://b2ahcfqaivla7" path="res://assets/BinbunVFX/shared/texture/flash/flash_01.png" id="2_aqcd5"]
[ext_resource type="Shader" uid="uid://d4eb3cue1817u" path="res://assets/BinbunVFX/impact_explosions/src/shader/glow.gdshader" id="3_cy50q"]
[ext_resource type="Texture2D" uid="uid://bqqrfrrd5f7kq" path="res://assets/BinbunVFX/shared/texture/flash/flash_03.png" id="3_rqeg2"]
[ext_resource type="Texture2D" uid="uid://cjkuadylsfid1" path="res://assets/BinbunVFX/shared/texture/flash/flash_02.png" id="4_cy50q"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="4_rqeg2"]
[ext_resource type="Texture2D" uid="uid://bxtojkguayub2" path="res://assets/BinbunVFX/shared/texture/flare/flare_03.png" id="6_il5r6"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_d2ynh"]
render_priority = 0
shader = ExtResource("1_5fy01")
shader_parameter/mask_texture = ExtResource("2_aqcd5")
shader_parameter/noise_texture = ExtResource("3_rqeg2")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(0.815686, 0.321569, 0.00392157, 1)
shader_parameter/secondary_color = Color(1, 0.541455, 0.101383, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_27chy"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_i4m5q"]
curve = SubResource("Curve_27chy")
[sub_resource type="Curve" id="Curve_pns5y"]
_data = [Vector2(0, 1), 0.0, 0.032534, 0, 0, Vector2(1, 0.696629), -1.17373, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_ka0sc"]
curve = SubResource("Curve_pns5y")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_jy2lo"]
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_ka0sc")
alpha_curve = SubResource("CurveTexture_i4m5q")
[sub_resource type="QuadMesh" id="QuadMesh_05b6s"]
size = Vector2(2, 2)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5fy01"]
render_priority = 0
shader = ExtResource("1_5fy01")
shader_parameter/mask_texture = ExtResource("4_cy50q")
shader_parameter/edge_smoothness = 0.4
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(0.815686, 0.321569, 0.00392157, 1)
shader_parameter/secondary_color = Color(1, 0.541455, 0.101383, 1)
shader_parameter/billboard = false
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_aqcd5"]
_data = [Vector2(0, 1), 0.0, -1.11523, 0, 0, Vector2(1, 0), -0.171187, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_cy50q"]
curve = SubResource("Curve_aqcd5")
[sub_resource type="Curve" id="Curve_rqeg2"]
_data = [Vector2(0, 0.730337), 0.0, 0.87191, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_il5r6"]
curve = SubResource("Curve_rqeg2")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_d2ynh"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 180.0
initial_velocity_min = -0.1
initial_velocity_max = 0.1
gravity = Vector3(0, 0, 0)
scale_min = 0.5
scale_curve = SubResource("CurveTexture_il5r6")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_cy50q")
[sub_resource type="QuadMesh" id="QuadMesh_27chy"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
orientation = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_27chy"]
render_priority = 0
shader = ExtResource("1_5fy01")
shader_parameter/mask_texture = ExtResource("6_il5r6")
shader_parameter/edge_smoothness = 1.0
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(0.815686, 0.321569, 0.00392157, 1)
shader_parameter/secondary_color = Color(1, 0.541455, 0.101383, 1)
shader_parameter/billboard = false
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_i4m5q"]
_data = [Vector2(0, 0.393258), 0.0, -1.11523, 0, 0, Vector2(1, 0), -0.171187, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_pns5y"]
curve = SubResource("Curve_i4m5q")
[sub_resource type="Curve" id="Curve_ka0sc"]
_data = [Vector2(0, 0.47191), 0.0, 1.45318, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_jy2lo"]
curve = SubResource("Curve_ka0sc")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_05b6s"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 10.0
initial_velocity_min = -0.1
initial_velocity_max = 0.1
gravity = Vector3(0, 0, 0)
scale_min = 0.6
scale_max = 1.1
scale_curve = SubResource("CurveTexture_jy2lo")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_pns5y")
[sub_resource type="QuadMesh" id="QuadMesh_doq2e"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
orientation = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_6hydx"]
render_priority = 0
shader = ExtResource("3_cy50q")
shader_parameter/primary_color = Color(0.815686, 0.321569, 0.00392157, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 0.5
shader_parameter/alpha_multiplier = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="SphereMesh" id="SphereMesh_5fy01"]
radius = 1.0
height = 2.0
radial_segments = 32
rings = 16
[sub_resource type="Animation" id="Animation_5fy01"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Flare_01:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Light:light_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Flare_02:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_6hydx"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Flare_01:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("MeshInstance3D:material_override:shader_parameter/alpha_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.5, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Light:light_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.5, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Flare_02:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_5fy01"]
_data = {
&"RESET": SubResource("Animation_5fy01"),
&"main": SubResource("Animation_6hydx")
}
[node name="VFXHit_05" type="Node3D"]
script = ExtResource("1_rqeg2")
primary_color = Color(0.815686, 0.321569, 0.00392157, 1)
secondary_color = Color(1, 0.541455, 0.101383, 1)
light_color = Color(0.886275, 0.831373, 0.756863, 1)
[node name="Hit_01" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_d2ynh")
emitting = false
amount = 2
lifetime = 0.4
one_shot = true
explosiveness = 0.6
process_material = SubResource("ParticleProcessMaterial_jy2lo")
draw_pass_1 = SubResource("QuadMesh_05b6s")
[node name="Flare_01" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_5fy01")
emitting = false
amount = 6
lifetime = 0.4
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_d2ynh")
draw_pass_1 = SubResource("QuadMesh_27chy")
[node name="Flare_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_27chy")
emitting = false
amount = 1
lifetime = 0.6
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_05b6s")
draw_pass_1 = SubResource("QuadMesh_doq2e")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
sorting_offset = -2.0
material_override = SubResource("ShaderMaterial_6hydx")
mesh = SubResource("SphereMesh_5fy01")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(0.886275, 0.831373, 0.756863, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("4_rqeg2")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_5fy01")
}

View File

@@ -0,0 +1,210 @@
[gd_scene load_steps=23 format=3 uid="uid://h47wdqps3cc6"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_8tack"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://experimental/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_65c2p"]
[ext_resource type="Texture2D" uid="uid://b2ahcfqaivla7" path="res://experimental/BinbunVFX/shared/texture/flash/flash_01.png" id="3_xdu8x"]
[ext_resource type="Texture2D" uid="uid://i6dlldk10la7" path="res://experimental/BinbunVFX/shared/texture/flash/flash_04.png" id="4_1m8b4"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/BinbunVFX/shared/script/vfx_light.gd" id="4_kynun"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8tack"]
render_priority = 0
shader = ExtResource("1_65c2p")
shader_parameter/mask_texture = ExtResource("3_xdu8x")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.847059, 0, 1)
shader_parameter/secondary_color = Color(1, 0.290196, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_65c2p"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_t0vfo"]
curve = SubResource("Curve_65c2p")
[sub_resource type="Curve" id="Curve_21na2"]
_data = [Vector2(0, 1), 0.0, 0.032534, 0, 0, Vector2(1, 0.696629), -1.17373, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_kynun"]
curve = SubResource("Curve_21na2")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_cgcsd"]
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_kynun")
alpha_curve = SubResource("CurveTexture_t0vfo")
[sub_resource type="QuadMesh" id="QuadMesh_r5rva"]
size = Vector2(1.5, 1.5)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_d07gb"]
render_priority = 0
shader = ExtResource("1_65c2p")
shader_parameter/mask_texture = ExtResource("4_1m8b4")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.847059, 0, 1)
shader_parameter/secondary_color = Color(1, 0.290196, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_cc04f"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_87miy"]
curve = SubResource("Curve_cc04f")
[sub_resource type="Curve" id="Curve_vx43j"]
_data = [Vector2(0, 1), 0.0, -0.125756, 0, 0, Vector2(1, 0.41573), -1.2228, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_jvs7g"]
curve = SubResource("Curve_vx43j")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_0t4af"]
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_jvs7g")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_87miy")
[sub_resource type="QuadMesh" id="QuadMesh_k8870"]
size = Vector2(2, 2)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="Animation" id="Animation_dtgi6"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Light:light_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_8pcwq"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Light:light_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.6),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_cc04f"]
_data = {
&"RESET": SubResource("Animation_dtgi6"),
&"main": SubResource("Animation_8pcwq")
}
[node name="VFXHit_06" type="Node3D"]
script = ExtResource("1_8tack")
primary_color = Color(1, 0.847059, 0, 1)
secondary_color = Color(1, 0.290196, 0, 1)
light_color = Color(1, 0.847059, 0, 1)
[node name="Hit_01" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_8tack")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
explosiveness = 0.6
process_material = SubResource("ParticleProcessMaterial_cgcsd")
draw_pass_1 = SubResource("QuadMesh_r5rva")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_d07gb")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
process_material = SubResource("ParticleProcessMaterial_0t4af")
draw_pass_1 = SubResource("QuadMesh_k8870")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.847059, 0, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("4_kynun")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_cc04f")
}

View File

@@ -0,0 +1,216 @@
[gd_scene load_steps=23 format=3 uid="uid://drtpctry2l8gr"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_3wu2a"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_4r8et"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="3_5t4k4"]
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_3wu2a"]
load_path = "res://.godot/imported/flash_02.png-484d2fe310e53356e8646347ab61dab0.s3tc.ctex"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_4r8et"]
render_priority = 0
shader = ExtResource("1_3wu2a")
shader_parameter/mask_texture = SubResource("CompressedTexture2D_3wu2a")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0.686275, 1)
shader_parameter/secondary_color = Color(1, 0.580392, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_5t4k4"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_35dyo"]
curve = SubResource("Curve_5t4k4")
[sub_resource type="Curve" id="Curve_sxdym"]
_data = [Vector2(0, 1), 0.0, -0.235651, 0, 0, Vector2(1, 0.213483), -1.0667, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_aqqxy"]
curve = SubResource("Curve_sxdym")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_su3r0"]
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_aqqxy")
alpha_curve = SubResource("CurveTexture_35dyo")
[sub_resource type="QuadMesh" id="QuadMesh_m1ds4"]
size = Vector2(1.5, 1.5)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_quohl"]
load_path = "res://.godot/imported/flash_02.png-484d2fe310e53356e8646347ab61dab0.s3tc.ctex"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3wu2a"]
render_priority = 0
shader = ExtResource("1_3wu2a")
shader_parameter/mask_texture = SubResource("CompressedTexture2D_quohl")
shader_parameter/edge_smoothness = 1.0
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 1, 0.686275, 1)
shader_parameter/secondary_color = Color(1, 0.580392, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_4r8et"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_5t4k4"]
curve = SubResource("Curve_4r8et")
[sub_resource type="Curve" id="Curve_35dyo"]
_data = [Vector2(0, 0.775281), 0.0, 1.24559, 0, 0, Vector2(1, 0.269663), -1.51924, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_sxdym"]
curve = SubResource("Curve_35dyo")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_aqqxy"]
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_sxdym")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_5t4k4")
[sub_resource type="QuadMesh" id="QuadMesh_su3r0"]
size = Vector2(2, 2)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="Animation" id="Animation_3wu2a"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Light:light_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
[sub_resource type="Animation" id="Animation_quohl"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Light:light_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_4r8et"]
_data = {
&"RESET": SubResource("Animation_quohl"),
&"main": SubResource("Animation_3wu2a")
}
[node name="VFXHit_07" type="Node3D"]
script = ExtResource("1_4r8et")
primary_color = Color(1, 1, 0.686275, 1)
secondary_color = Color(1, 0.580392, 0, 1)
light_color = Color(1, 1, 0.541176, 1)
[node name="Hit_01" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_4r8et")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
explosiveness = 0.6
process_material = SubResource("ParticleProcessMaterial_su3r0")
draw_pass_1 = SubResource("QuadMesh_m1ds4")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_3wu2a")
emitting = false
amount = 1
lifetime = 0.4
one_shot = true
process_material = SubResource("ParticleProcessMaterial_aqqxy")
draw_pass_1 = SubResource("QuadMesh_su3r0")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 1, 0.541176, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("3_5t4k4")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_4r8et")
}

View File

@@ -0,0 +1,224 @@
[gd_scene load_steps=23 format=3 uid="uid://cp7mydlqqpb17"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_ghyif"]
[ext_resource type="Shader" uid="uid://cssforqq3llvn" path="res://assets/BinbunVFX/impact_explosions/src/shader/basic.gdshader" id="1_uiasa"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="2_ghyif"]
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_mf6mg"]
load_path = "res://.godot/imported/flash_03.png-5a9d2c66592f2873db86fa41f28ce732.s3tc.ctex"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_746na"]
render_priority = 0
shader = ExtResource("1_uiasa")
shader_parameter/mask_texture = SubResource("CompressedTexture2D_mf6mg")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.611765, 0.0941176, 1)
shader_parameter/secondary_color = Color(0.894118, 0.101961, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_sdvv1"]
_data = [Vector2(0.5, 1), 0.0, -3.02196, 0, 0, Vector2(1, 0), -0.0871912, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_6d4th"]
curve = SubResource("Curve_sdvv1")
[sub_resource type="Curve" id="Curve_cpsjg"]
_data = [Vector2(0, 1), 0.0, 0.032534, 0, 0, Vector2(1, 0.775281), -0.40554, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_7vnfm"]
curve = SubResource("Curve_cpsjg")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ba0na"]
emission_shape = 1
emission_sphere_radius = 0.1
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
gravity = Vector3(0, 0, 0)
scale_min = 0.7
scale_max = 1.1
scale_curve = SubResource("CurveTexture_7vnfm")
alpha_curve = SubResource("CurveTexture_6d4th")
[sub_resource type="QuadMesh" id="QuadMesh_shtac"]
size = Vector2(1.2, 2)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_uiasa"]
load_path = "res://.godot/imported/flash_03.png-5a9d2c66592f2873db86fa41f28ce732.s3tc.ctex"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ghyif"]
render_priority = 0
shader = ExtResource("1_uiasa")
shader_parameter/mask_texture = SubResource("CompressedTexture2D_uiasa")
shader_parameter/edge_smoothness = 0.5
shader_parameter/color_smoothness = 1.0
shader_parameter/primary_color = Color(1, 0.611765, 0.0941176, 1)
shader_parameter/secondary_color = Color(0.894118, 0.101961, 0, 1)
shader_parameter/billboard = true
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_mf6mg"]
_data = [Vector2(0.479381, 1), 0.0, -2.39775, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_746na"]
curve = SubResource("Curve_mf6mg")
[sub_resource type="Curve" id="Curve_6d4th"]
_data = [Vector2(0, 1), 0.0, -0.125756, 0, 0, Vector2(1, 0.775281), -0.565127, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_cpsjg"]
curve = SubResource("Curve_6d4th")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_7vnfm"]
emission_shape = 1
emission_sphere_radius = 0.1
angle_min = -720.0
angle_max = 720.0
gravity = Vector3(0, 0, 0)
scale_max = 1.4
scale_curve = SubResource("CurveTexture_cpsjg")
color = Color(0, 0, 0, 1)
alpha_curve = SubResource("CurveTexture_746na")
[sub_resource type="QuadMesh" id="QuadMesh_ba0na"]
size = Vector2(3, 2)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="Animation" id="Animation_ghyif"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Light:light_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_uiasa"]
resource_name = "main"
length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Hit_01:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Hit_02:emitting")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Light:light_multiplier")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.4, 0.8),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_mf6mg"]
_data = {
&"RESET": SubResource("Animation_ghyif"),
&"main": SubResource("Animation_uiasa")
}
[node name="VFXHit_08" type="Node3D"]
script = ExtResource("1_ghyif")
primary_color = Color(1, 0.611765, 0.0941176, 1)
secondary_color = Color(0.894118, 0.101961, 0, 1)
light_color = Color(1, 1, 0.67451, 1)
[node name="Hit_01" type="GPUParticles3D" parent="."]
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_746na")
emitting = false
amount = 2
lifetime = 0.4
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_ba0na")
draw_pass_1 = SubResource("QuadMesh_shtac")
[node name="Hit_02" type="GPUParticles3D" parent="."]
sorting_offset = -1.0
material_override = SubResource("ShaderMaterial_ghyif")
emitting = false
amount = 2
lifetime = 0.4
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_7vnfm")
draw_pass_1 = SubResource("QuadMesh_ba0na")
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 1, 0.67451, 1)
light_energy = 2.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("2_ghyif")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_mf6mg")
}

View File

@@ -0,0 +1,648 @@
[gd_scene load_steps=57 format=3 uid="uid://34ptrnfgpwlp"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_gk7hu"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_huy36"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="1_kc1dr"]
[ext_resource type="Shader" uid="uid://dw1bkef40wjyi" path="res://assets/BinbunVFX/impact_explosions/src/shader/ground_impact.gdshader" id="1_tpmvn"]
[ext_resource type="Shader" uid="uid://7acg1ejnsqij" path="res://assets/BinbunVFX/impact_explosions/src/shader/impact_streaks.gdshader" id="2_6ypje"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="6_vw7xv"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="7_fqiel"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="8_jehp2"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="9_jehp2"]
[sub_resource type="Gradient" id="Gradient_huy36"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_yt6d1"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_jehp2"]
seamless = true
color_ramp = SubResource("Gradient_huy36")
noise = SubResource("FastNoiseLite_yt6d1")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_jehp2"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_gk7hu")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_jehp2")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_gk7hu"]
_data = [Vector2(0, 0), 0.0, 2.69302, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_irlqe"]
curve = SubResource("Curve_gk7hu")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_vw7xv"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.8
alpha_curve = SubResource("CurveTexture_irlqe")
[sub_resource type="SphereMesh" id="SphereMesh_gk7hu"]
radius = 1.0
radial_segments = 32
rings = 16
is_hemisphere = true
[sub_resource type="Gradient" id="Gradient_vw7xv"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_8mskx"]
gradient = SubResource("Gradient_vw7xv")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_irlqe"]
render_priority = 0
shader = ExtResource("6_vw7xv")
shader_parameter/shape_texture = SubResource("GradientTexture2D_8mskx")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/secondary_color = Color(0.984314, 0.192157, 0, 1)
[sub_resource type="Curve" id="Curve_vw7xv"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_0gt57"]
curve = SubResource("Curve_vw7xv")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_fqiel"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 60.0
initial_velocity_min = 5.0
initial_velocity_max = 10.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_0gt57")
[sub_resource type="QuadMesh" id="QuadMesh_8mskx"]
size = Vector2(0.05, 0.4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_gk7hu"]
seed = 2
fractal_type = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_jx4yd"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_gk7hu")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_vw7xv"]
noise_type = 2
frequency = 0.04
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_vx8h5"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_vw7xv")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_fqiel"]
render_priority = 0
shader = ExtResource("1_kc1dr")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_vx8h5")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_jx4yd")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 0.2
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_jehp2"]
_data = [Vector2(0, 0.495863), 0.0, 0.0, 0, 0, Vector2(1, 0), -1.42645, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_kt3hw"]
curve = SubResource("Curve_jehp2")
[sub_resource type="Gradient" id="Gradient_8mskx"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 1, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_b3slk"]
gradient = SubResource("Gradient_8mskx")
[sub_resource type="Gradient" id="Gradient_jx4yd"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_xbpst"]
gradient = SubResource("Gradient_jx4yd")
[sub_resource type="Curve" id="Curve_kt3hw"]
_data = [Vector2(0.00265958, 0.542916), 0.0, 1.14448, 0, 0, Vector2(1, 1), 5.21194e-07, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_gappd"]
curve = SubResource("Curve_kt3hw")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_xbpst"]
emission_shape_offset = Vector3(0, 0.1, 0)
emission_shape = 3
emission_box_extents = Vector3(0.2, 0.1, 0.2)
angle_min = -720.0
angle_max = 720.0
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
damping_min = 10.0
damping_max = 20.0
scale_min = 0.8
scale_curve = SubResource("CurveTexture_gappd")
color_ramp = SubResource("GradientTexture1D_xbpst")
color_initial_ramp = SubResource("GradientTexture1D_b3slk")
alpha_curve = SubResource("CurveTexture_kt3hw")
[sub_resource type="SphereMesh" id="SphereMesh_huy36"]
radius = 1.5
height = 1.5
radial_segments = 32
rings = 16
is_hemisphere = true
[sub_resource type="FastNoiseLite" id="FastNoiseLite_irlqe"]
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_djaon"]
noise = SubResource("FastNoiseLite_irlqe")
[sub_resource type="Gradient" id="Gradient_tpmvn"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_m3kmr"]
gradient = SubResource("Gradient_tpmvn")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_kc1dr"]
render_priority = 0
shader = ExtResource("1_tpmvn")
shader_parameter/shape_texture = SubResource("GradientTexture2D_m3kmr")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_djaon")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/secondary_color = Color(0.984314, 0.192157, 0, 1)
shader_parameter/decay = 0.0
shader_parameter/alpha_mode = 0
[sub_resource type="PlaneMesh" id="PlaneMesh_jehp2"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_kc1dr"]
noise_type = 2
frequency = 0.02
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_3gy3r"]
seamless = true
noise = SubResource("FastNoiseLite_kc1dr")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_gk7hu"]
render_priority = 0
shader = ExtResource("2_6ypje")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_3gy3r")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/secondary_color = Color(0.984314, 0.192157, 0, 1)
shader_parameter/texture_scale = Vector2(3, 0.2)
shader_parameter/time_scale = Vector2(-0.1, 0.1)
shader_parameter/grow = 0.34
shader_parameter/decay = 0.2
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_6ypje"]
top_radius = 1.2
height = 4.0
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_jehp2"]
noise_type = 2
frequency = 0.02
offset = Vector3(412.7, 0, 0)
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_t532u"]
seamless = true
seamless_blend_skirt = 0.5
noise = SubResource("FastNoiseLite_jehp2")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8mskx"]
render_priority = 0
shader = ExtResource("2_6ypje")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_t532u")
shader_parameter/primary_color = Color(1, 0.529412, 0, 1)
shader_parameter/secondary_color = Color(0.984314, 0.192157, 0, 1)
shader_parameter/texture_scale = Vector2(4, 0.2)
shader_parameter/time_scale = Vector2(0.1, 0.1)
shader_parameter/grow = 0.15
shader_parameter/decay = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_tpmvn"]
top_radius = 2.0
bottom_radius = 0.6
height = 1.6
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="Animation" id="Animation_gk7hu"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.2]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.34]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Smoke:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Core:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sparks:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Decal:emission_energy")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Decal:albedo_mix")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Light:light_multiplier")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.15]
}
tracks/10/type = "value"
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_tpmvn"]
resource_name = "main"
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 1),
"transitions": PackedFloat32Array(0.7, 1),
"update": 0,
"values": [0.0, 1.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.0666667, 0.6, 1),
"transitions": PackedFloat32Array(0.5, 0.5, 1, 1),
"update": 0,
"values": [1.0, 1.0, 0.0, 0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.0666667, 0.6),
"transitions": PackedFloat32Array(0.5, 0.5, 1),
"update": 0,
"values": [0.15, 0.1, 0.05]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Smoke:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Core:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sparks:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Decal:emission_energy")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0, 1),
"transitions": PackedFloat32Array(0.5, 1),
"update": 0,
"values": [4.0, 0.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Decal:albedo_mix")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 1),
"transitions": PackedFloat32Array(0.4, 1),
"update": 0,
"values": [1.0, 0.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Light:light_multiplier")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 0.6),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0, 0.0666667, 0.6, 1),
"transitions": PackedFloat32Array(1, 0.482968, 1, 1),
"update": 0,
"values": [0.15, 0.1, 0.05, 0.05]
}
tracks/10/type = "value"
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = {
"times": PackedFloat32Array(0, 0.0666667, 0.6, 1),
"transitions": PackedFloat32Array(1, 0.707107, 1, 1),
"update": 0,
"values": [1.0, 1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_6ypje"]
_data = {
&"RESET": SubResource("Animation_gk7hu"),
&"main": SubResource("Animation_tpmvn")
}
[node name="VFXImpact_01" type="Node3D"]
script = ExtResource("1_huy36")
primary_color = Color(1, 0.529412, 0, 1)
secondary_color = Color(0.984314, 0.192157, 0, 1)
tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
light_color = Color(1, 0.529412, 0, 1)
light_energy = 8.0
[node name="Core" type="GPUParticles3D" parent="."]
sorting_offset = 0.5
material_override = SubResource("ShaderMaterial_jehp2")
emitting = false
amount = 1
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_vw7xv")
draw_pass_1 = SubResource("SphereMesh_gk7hu")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_irlqe")
emitting = false
amount = 16
lifetime = 0.5
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_fqiel")
draw_pass_1 = SubResource("QuadMesh_8mskx")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = 0.2
material_override = SubResource("ShaderMaterial_fqiel")
emitting = false
amount = 1
lifetime = 1.2
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_xbpst")
draw_pass_1 = SubResource("SphereMesh_huy36")
[node name="Ground_Impact" type="MeshInstance3D" parent="."]
layers = 540672
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_kc1dr")
mesh = SubResource("PlaneMesh_jehp2")
[node name="Impact_Streaks2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_gk7hu")
mesh = SubResource("CylinderMesh_6ypje")
[node name="Impact_Streaks1" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.8, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_8mskx")
mesh = SubResource("CylinderMesh_tpmvn")
[node name="Decal" type="Decal" parent="."]
size = Vector3(3, 3, 3)
texture_albedo = ExtResource("7_fqiel")
texture_emission = ExtResource("8_jehp2")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.529412, 0, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("9_jehp2")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_6ypje")
}

View File

@@ -0,0 +1,515 @@
[gd_scene load_steps=41 format=3 uid="uid://x7jrg2y81jse"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_i0m4g"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_l4skl"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="2_i0m4g"]
[ext_resource type="Shader" uid="uid://dw1bkef40wjyi" path="res://assets/BinbunVFX/impact_explosions/src/shader/ground_impact.gdshader" id="4_k1np2"]
[ext_resource type="Shader" uid="uid://7acg1ejnsqij" path="res://assets/BinbunVFX/impact_explosions/src/shader/impact_streaks.gdshader" id="5_o354m"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="6_3rv0o"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="7_ckj5u"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="8_q6tea"]
[sub_resource type="Gradient" id="Gradient_l4skl"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_i0m4g"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_ewqdq"]
seamless = true
color_ramp = SubResource("Gradient_l4skl")
noise = SubResource("FastNoiseLite_i0m4g")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_k1np2"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_l4skl")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_ewqdq")
shader_parameter/primary_color = Color(1, 0.462745, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_o354m"]
_data = [Vector2(0, 0), 0.0, 2.69302, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_3rv0o"]
curve = SubResource("Curve_o354m")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ckj5u"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.8
alpha_curve = SubResource("CurveTexture_3rv0o")
[sub_resource type="SphereMesh" id="SphereMesh_l4skl"]
radius = 1.0
height = 0.7
radial_segments = 32
rings = 16
is_hemisphere = true
[sub_resource type="Gradient" id="Gradient_i0m4g"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_ewqdq"]
gradient = SubResource("Gradient_i0m4g")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o354m"]
render_priority = 0
shader = ExtResource("2_i0m4g")
shader_parameter/shape_texture = SubResource("GradientTexture2D_ewqdq")
shader_parameter/primary_color = Color(1, 0.462745, 0, 1)
shader_parameter/secondary_color = Color(1, 0.0627451, 0, 1)
[sub_resource type="Curve" id="Curve_3rv0o"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_ckj5u"]
curve = SubResource("Curve_3rv0o")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_q6tea"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 60.0
initial_velocity_min = 5.0
initial_velocity_max = 10.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_ckj5u")
[sub_resource type="QuadMesh" id="QuadMesh_mbqgx"]
size = Vector2(0.05, 0.4)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_ewqdq"]
noise_type = 2
fractal_octaves = 3
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_k1np2"]
noise = SubResource("FastNoiseLite_ewqdq")
[sub_resource type="Gradient" id="Gradient_k1np2"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_o354m"]
gradient = SubResource("Gradient_k1np2")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3rv0o"]
render_priority = 0
shader = ExtResource("4_k1np2")
shader_parameter/shape_texture = SubResource("GradientTexture2D_o354m")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_k1np2")
shader_parameter/primary_color = Color(1, 0.462745, 0, 1)
shader_parameter/secondary_color = Color(1, 0.0627451, 0, 1)
shader_parameter/decay = 0.0
shader_parameter/alpha_mode = 0
[sub_resource type="PlaneMesh" id="PlaneMesh_l4skl"]
size = Vector2(3, 3)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_q6tea"]
noise_type = 0
fractal_type = 2
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_mbqgx"]
seamless = true
noise = SubResource("FastNoiseLite_q6tea")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_mlvcm"]
render_priority = 0
shader = ExtResource("5_o354m")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_mbqgx")
shader_parameter/primary_color = Color(1, 0.462745, 0, 1)
shader_parameter/secondary_color = Color(1, 0.0627451, 0, 1)
shader_parameter/texture_scale = Vector2(1, 0.5)
shader_parameter/time_scale = Vector2(-0.1, 0.3)
shader_parameter/grow = 0.2
shader_parameter/decay = 0.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_8fjfo"]
top_radius = 0.6
height = 3.0
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_l4skl"]
noise_type = 0
offset = Vector3(412.7, 0, 0)
fractal_type = 2
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_i0m4g"]
seamless = true
seamless_blend_skirt = 0.5
noise = SubResource("FastNoiseLite_l4skl")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ewqdq"]
render_priority = 0
shader = ExtResource("5_o354m")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_i0m4g")
shader_parameter/primary_color = Color(1, 0.462745, 0, 1)
shader_parameter/secondary_color = Color(1, 0.0627451, 0, 1)
shader_parameter/texture_scale = Vector2(2, 0.5)
shader_parameter/time_scale = Vector2(0.1, 0.1)
shader_parameter/grow = 0.2
shader_parameter/decay = 0.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_l4skl"]
top_radius = 1.6
bottom_radius = 0.6
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="Animation" id="Animation_i0m4g"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.2]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.2]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Core:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Sparks:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_l4skl"]
resource_name = "main"
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.05, 0.6, 1),
"transitions": PackedFloat32Array(1, 0.4, 1, 1),
"update": 0,
"values": [0.0, 1.0, 0.0, 0.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.05, 0.6, 1),
"transitions": PackedFloat32Array(1, 0.4, 1, 1),
"update": 0,
"values": [0.2, 0.1, 0.05, 0.05]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.05, 0.6, 1),
"transitions": PackedFloat32Array(1, 0.4, 1, 1),
"update": 0,
"values": [0.0, 1.0, 0.0, 0.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.05, 0.6, 1),
"transitions": PackedFloat32Array(1, 0.4, 1, 1),
"update": 0,
"values": [0.2, 0.1, 0.05, 0.05]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Core:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Sparks:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0.05),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(0.5, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_i0m4g"]
_data = {
&"RESET": SubResource("Animation_i0m4g"),
&"main": SubResource("Animation_l4skl")
}
[node name="VFXImpact_02" type="Node3D"]
script = ExtResource("1_i0m4g")
primary_color = Color(1, 0.462745, 0, 1)
secondary_color = Color(1, 0.0627451, 0, 1)
tertiary_color = Color(0.303233, 0.303233, 0.303233, 1)
[node name="Core" type="GPUParticles3D" parent="."]
sorting_offset = 0.5
material_override = SubResource("ShaderMaterial_k1np2")
emitting = false
amount = 1
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_ckj5u")
draw_pass_1 = SubResource("SphereMesh_l4skl")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_o354m")
emitting = false
amount = 16
lifetime = 0.5
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_q6tea")
draw_pass_1 = SubResource("QuadMesh_mbqgx")
[node name="Ground_Impact" type="MeshInstance3D" parent="."]
layers = 540672
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_3rv0o")
mesh = SubResource("PlaneMesh_l4skl")
[node name="Impact_Streaks2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_mlvcm")
mesh = SubResource("CylinderMesh_8fjfo")
[node name="Impact_Streaks1" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_ewqdq")
mesh = SubResource("CylinderMesh_l4skl")
[node name="Decal" type="Decal" parent="."]
size = Vector3(3, 3, 3)
texture_albedo = ExtResource("6_3rv0o")
texture_emission = ExtResource("7_ckj5u")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.529412, 0, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("8_q6tea")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_i0m4g")
}

View File

@@ -0,0 +1,656 @@
[gd_scene load_steps=57 format=3 uid="uid://b6eowhdx7a7vq"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_7tx03"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_b0uon"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="2_b0uon"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="3_54wdx"]
[ext_resource type="Shader" uid="uid://dw1bkef40wjyi" path="res://assets/BinbunVFX/impact_explosions/src/shader/ground_impact.gdshader" id="4_fomv7"]
[ext_resource type="Shader" uid="uid://7acg1ejnsqij" path="res://assets/BinbunVFX/impact_explosions/src/shader/impact_streaks.gdshader" id="5_so335"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="6_4rgj4"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="7_5ouiv"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="8_mhplm"]
[sub_resource type="Gradient" id="Gradient_7tx03"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_fomv7"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_so335"]
seamless = true
color_ramp = SubResource("Gradient_7tx03")
noise = SubResource("FastNoiseLite_fomv7")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5ouiv"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_7tx03")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_so335")
shader_parameter/primary_color = Color(1, 0.780392, 0.231373, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_mhplm"]
_data = [Vector2(0, 0), 0.0, 2.69302, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_hksqb"]
curve = SubResource("Curve_mhplm")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_iajpn"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.8
alpha_curve = SubResource("CurveTexture_hksqb")
[sub_resource type="SphereMesh" id="SphereMesh_ak2t6"]
radius = 1.5
height = 0.5
is_hemisphere = true
[sub_resource type="Gradient" id="Gradient_b0uon"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_54wdx"]
gradient = SubResource("Gradient_b0uon")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_mhplm"]
render_priority = 0
shader = ExtResource("2_b0uon")
shader_parameter/shape_texture = SubResource("GradientTexture2D_54wdx")
shader_parameter/primary_color = Color(1, 0.780392, 0.231373, 1)
shader_parameter/secondary_color = Color(0.960784, 0.388235, 0.176471, 1)
[sub_resource type="Curve" id="Curve_hksqb"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_iajpn"]
curve = SubResource("Curve_hksqb")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_ak2t6"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 60.0
initial_velocity_min = 5.0
initial_velocity_max = 10.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_iajpn")
[sub_resource type="QuadMesh" id="QuadMesh_pto8m"]
size = Vector2(0.05, 0.4)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_so335"]
seed = 2
fractal_type = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_4rgj4"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_so335")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_5ouiv"]
noise_type = 2
frequency = 0.04
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_mhplm"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_5ouiv")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_hksqb"]
render_priority = 0
shader = ExtResource("3_54wdx")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_mhplm")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_4rgj4")
shader_parameter/primary_color = Color(1, 0.780392, 0.231373, 1)
shader_parameter/tertiary_color = Color(0.227451, 0.223529, 0.180392, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_7tx03"]
_data = [Vector2(0, 0.47191), 0.0, 0.0, 0, 0, Vector2(1, 0), -0.45351, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_b0uon"]
curve = SubResource("Curve_7tx03")
[sub_resource type="Gradient" id="Gradient_fomv7"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 1, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_so335"]
gradient = SubResource("Gradient_fomv7")
[sub_resource type="Gradient" id="Gradient_4rgj4"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_5ouiv"]
gradient = SubResource("Gradient_4rgj4")
[sub_resource type="Curve" id="Curve_iajpn"]
_data = [Vector2(0.00265958, 0.542916), 0.0, 1.14448, 0, 0, Vector2(1, 1), 5.21194e-07, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_ak2t6"]
curve = SubResource("Curve_iajpn")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_pto8m"]
particle_flag_align_y = true
emission_shape_offset = Vector3(0, 0.1, 0)
emission_shape = 3
emission_box_extents = Vector3(0.2, 0.1, 0.2)
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 30.0
initial_velocity_min = 2.0
initial_velocity_max = 4.0
gravity = Vector3(0, 0, 0)
damping_min = 3.0
damping_max = 5.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_ak2t6")
color_ramp = SubResource("GradientTexture1D_5ouiv")
color_initial_ramp = SubResource("GradientTexture1D_so335")
alpha_curve = SubResource("CurveTexture_b0uon")
[sub_resource type="SphereMesh" id="SphereMesh_iajpn"]
radius = 1.0
height = 2.5
radial_segments = 32
rings = 16
[sub_resource type="FastNoiseLite" id="FastNoiseLite_7tx03"]
noise_type = 4
fractal_type = 3
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 16.5
domain_warp_fractal_gain = 0.2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_b0uon"]
noise = SubResource("FastNoiseLite_7tx03")
[sub_resource type="Gradient" id="Gradient_54wdx"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_fomv7"]
gradient = SubResource("Gradient_54wdx")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_so335"]
render_priority = 0
shader = ExtResource("4_fomv7")
shader_parameter/shape_texture = SubResource("GradientTexture2D_fomv7")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_b0uon")
shader_parameter/primary_color = Color(1, 0.780392, 0.231373, 1)
shader_parameter/secondary_color = Color(0.960784, 0.388235, 0.176471, 1)
shader_parameter/decay = 0.164988
shader_parameter/alpha_mode = 0
[sub_resource type="PlaneMesh" id="PlaneMesh_4rgj4"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_b0uon"]
noise_type = 3
fractal_type = 3
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 29.885
domain_warp_frequency = 0.02
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_54wdx"]
seamless = true
noise = SubResource("FastNoiseLite_b0uon")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_fomv7"]
render_priority = 0
shader = ExtResource("5_so335")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_54wdx")
shader_parameter/primary_color = Color(1, 0.780392, 0.231373, 1)
shader_parameter/secondary_color = Color(0.960784, 0.388235, 0.176471, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/time_scale = Vector2(-0.1, 0.1)
shader_parameter/grow = 0.1
shader_parameter/decay = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_7tx03"]
top_radius = 1.6
height = 3.0
cap_top = false
cap_bottom = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_54wdx"]
noise_type = 0
offset = Vector3(412.7, 0, 0)
fractal_type = 3
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 20.0
domain_warp_frequency = 0.04
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_fomv7"]
seamless = true
seamless_blend_skirt = 0.5
noise = SubResource("FastNoiseLite_54wdx")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_4rgj4"]
render_priority = 0
shader = ExtResource("5_so335")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_fomv7")
shader_parameter/primary_color = Color(1, 0.780392, 0.231373, 1)
shader_parameter/secondary_color = Color(0.960784, 0.388235, 0.176471, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/time_scale = Vector2(0.1, 0.1)
shader_parameter/grow = 0.2
shader_parameter/decay = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_b0uon"]
top_radius = 2.0
bottom_radius = 0.6
height = 1.6
cap_top = false
cap_bottom = false
[sub_resource type="Animation" id="Animation_b0uon"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.1]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.2]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.164988]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Core:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Smoke:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/10/type = "value"
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/path = NodePath("Sparks:emitting")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_7tx03"]
resource_name = "main"
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.05, 0.25, 1),
"transitions": PackedFloat32Array(0.5, 0.5, 1, 1),
"update": 0,
"values": [0.2, 0.05, 0.02, 0.02]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.05, 0.3, 1),
"transitions": PackedFloat32Array(0.5, 1, 1, 1),
"update": 0,
"values": [0.2, 0.05, 0.05, 0.05]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.55, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.8, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Core:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Smoke:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 0.8, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [4.0, 0.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [1.0, 0.0]
}
tracks/10/type = "value"
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/path = NodePath("Sparks:emitting")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_b0uon"]
_data = {
&"RESET": SubResource("Animation_b0uon"),
&"main": SubResource("Animation_7tx03")
}
[node name="VFXImpact_03" type="Node3D"]
script = ExtResource("1_b0uon")
primary_color = Color(1, 0.780392, 0.231373, 1)
secondary_color = Color(0.960784, 0.388235, 0.176471, 1)
[node name="Core" type="GPUParticles3D" parent="."]
sorting_offset = 0.5
material_override = SubResource("ShaderMaterial_5ouiv")
emitting = false
amount = 1
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_iajpn")
draw_pass_1 = SubResource("SphereMesh_ak2t6")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_mhplm")
emitting = false
amount = 16
lifetime = 0.5
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_ak2t6")
draw_pass_1 = SubResource("QuadMesh_pto8m")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = 0.2
material_override = SubResource("ShaderMaterial_hksqb")
emitting = false
lifetime = 1.2
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_pto8m")
draw_pass_1 = SubResource("SphereMesh_iajpn")
[node name="Ground_Impact" type="MeshInstance3D" parent="."]
layers = 540672
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_so335")
mesh = SubResource("PlaneMesh_4rgj4")
[node name="Impact_Streaks2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_fomv7")
mesh = SubResource("CylinderMesh_7tx03")
[node name="Impact_Streaks1" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.8, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_4rgj4")
mesh = SubResource("CylinderMesh_b0uon")
[node name="Decal" type="Decal" parent="."]
size = Vector3(3, 3, 3)
texture_albedo = ExtResource("6_4rgj4")
texture_emission = ExtResource("7_5ouiv")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.529412, 0, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("8_mhplm")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_b0uon")
}

View File

@@ -0,0 +1,661 @@
[gd_scene load_steps=57 format=3 uid="uid://2eq2j53sic1i"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_hdc0q"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_yy7r0"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="2_hdc0q"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="3_235d3"]
[ext_resource type="Shader" uid="uid://dw1bkef40wjyi" path="res://assets/BinbunVFX/impact_explosions/src/shader/ground_impact.gdshader" id="4_3tcg6"]
[ext_resource type="Shader" uid="uid://7acg1ejnsqij" path="res://assets/BinbunVFX/impact_explosions/src/shader/impact_streaks.gdshader" id="5_3w10a"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="6_nw0c3"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="7_2j8l2"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="8_dc2st"]
[sub_resource type="Gradient" id="Gradient_yy7r0"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_hdc0q"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_235d3"]
seamless = true
color_ramp = SubResource("Gradient_yy7r0")
noise = SubResource("FastNoiseLite_hdc0q")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3tcg6"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_yy7r0")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_235d3")
shader_parameter/primary_color = Color(0.917647, 0.439216, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_3w10a"]
_data = [Vector2(0, 0), 0.0, 2.69302, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_nw0c3"]
curve = SubResource("Curve_3w10a")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_2j8l2"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.8
alpha_curve = SubResource("CurveTexture_nw0c3")
[sub_resource type="SphereMesh" id="SphereMesh_dc2st"]
radius = 0.8
height = 0.5
is_hemisphere = true
[sub_resource type="Gradient" id="Gradient_mbt53"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_kl6uu"]
gradient = SubResource("Gradient_mbt53")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_rhnvq"]
render_priority = 0
shader = ExtResource("2_hdc0q")
shader_parameter/shape_texture = SubResource("GradientTexture2D_kl6uu")
shader_parameter/primary_color = Color(0.917647, 0.439216, 0, 1)
shader_parameter/secondary_color = Color(1, 0.627451, 0.294118, 1)
[sub_resource type="Curve" id="Curve_o2r4g"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_ovten"]
curve = SubResource("Curve_o2r4g")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_iqw3l"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 60.0
initial_velocity_min = 5.0
initial_velocity_max = 10.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_ovten")
[sub_resource type="QuadMesh" id="QuadMesh_omfat"]
size = Vector2(0.05, 0.4)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_yy7r0"]
seed = 2
fractal_type = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_hdc0q"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_yy7r0")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_235d3"]
noise_type = 2
frequency = 0.04
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_3tcg6"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_235d3")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3w10a"]
render_priority = 0
shader = ExtResource("3_235d3")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_3tcg6")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_hdc0q")
shader_parameter/primary_color = Color(0.917647, 0.439216, 0, 1)
shader_parameter/tertiary_color = Color(0.317647, 0.317647, 0.219608, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 0.6
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_yy7r0"]
_data = [Vector2(0, 0.47191), 0.0, 0.0, 0, 0, Vector2(1, 0), -0.45351, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_hdc0q"]
curve = SubResource("Curve_yy7r0")
[sub_resource type="Gradient" id="Gradient_235d3"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 1, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_3tcg6"]
gradient = SubResource("Gradient_235d3")
[sub_resource type="Gradient" id="Gradient_3w10a"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_nw0c3"]
gradient = SubResource("Gradient_3w10a")
[sub_resource type="Curve" id="Curve_2j8l2"]
_data = [Vector2(0.00265958, 0.542916), 0.0, 1.14448, 0, 0, Vector2(1, 1), 5.21194e-07, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_dc2st"]
curve = SubResource("Curve_2j8l2")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_mbt53"]
particle_flag_align_y = true
emission_shape_offset = Vector3(0, 0.5, 0)
emission_shape = 3
emission_box_extents = Vector3(0.2, 0.1, 0.2)
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 20.0
initial_velocity_min = 2.0
initial_velocity_max = 6.0
gravity = Vector3(0, 0, 0)
damping_min = 3.0
damping_max = 5.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_dc2st")
color_ramp = SubResource("GradientTexture1D_nw0c3")
color_initial_ramp = SubResource("GradientTexture1D_3tcg6")
alpha_curve = SubResource("CurveTexture_hdc0q")
[sub_resource type="SphereMesh" id="SphereMesh_kl6uu"]
radius = 0.6
height = 2.5
radial_segments = 32
rings = 16
[sub_resource type="FastNoiseLite" id="FastNoiseLite_3tcg6"]
noise_type = 4
fractal_type = 3
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 16.5
domain_warp_fractal_gain = 0.2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_3w10a"]
noise = SubResource("FastNoiseLite_3tcg6")
[sub_resource type="Gradient" id="Gradient_nw0c3"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_2j8l2"]
gradient = SubResource("Gradient_nw0c3")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dc2st"]
render_priority = 0
shader = ExtResource("4_3tcg6")
shader_parameter/shape_texture = SubResource("GradientTexture2D_2j8l2")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_3w10a")
shader_parameter/primary_color = Color(0.917647, 0.439216, 0, 1)
shader_parameter/secondary_color = Color(1, 0.627451, 0.294118, 1)
shader_parameter/decay = 0.0
shader_parameter/alpha_mode = 0
[sub_resource type="PlaneMesh" id="PlaneMesh_uetuo"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_3lxlv"]
noise_type = 3
frequency = 0.005
fractal_type = 3
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 29.885
domain_warp_frequency = 0.02
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_ojxkw"]
seamless = true
noise = SubResource("FastNoiseLite_3lxlv")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_1d7b2"]
render_priority = 0
shader = ExtResource("5_3w10a")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_ojxkw")
shader_parameter/primary_color = Color(0.917647, 0.439216, 0, 1)
shader_parameter/secondary_color = Color(1, 0.627451, 0.294118, 1)
shader_parameter/texture_scale = Vector2(3, 1)
shader_parameter/time_scale = Vector2(-0.1, 0.1)
shader_parameter/grow = 0.05
shader_parameter/decay = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_yy7r0"]
top_radius = 1.5
height = 1.6
cap_top = false
cap_bottom = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_7lxyq"]
noise_type = 0
frequency = 0.003
offset = Vector3(412.7, 0, 0)
fractal_type = 3
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 20.0
domain_warp_frequency = 0.04
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_25mym"]
seamless = true
seamless_blend_skirt = 0.5
noise = SubResource("FastNoiseLite_7lxyq")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_uyueq"]
render_priority = 0
shader = ExtResource("5_3w10a")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_25mym")
shader_parameter/primary_color = Color(0.917647, 0.439216, 0, 1)
shader_parameter/secondary_color = Color(1, 0.627451, 0.294118, 1)
shader_parameter/texture_scale = Vector2(4, 1)
shader_parameter/time_scale = Vector2(0.1, 0.1)
shader_parameter/grow = 0.05
shader_parameter/decay = 0.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_hdc0q"]
top_radius = 2.0
bottom_radius = 0.6
height = 0.8
cap_top = false
cap_bottom = false
[sub_resource type="Animation" id="Animation_ms5jo"]
resource_name = "main"
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.05, 0.1, 0.5, 1),
"transitions": PackedFloat32Array(1, 1, 0.6, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0, 0.0, 0.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.1, 0.15, 0.55, 1),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0, 0.0, 0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.05, 0.5, 1),
"transitions": PackedFloat32Array(4, 4, 1, 1),
"update": 0,
"values": [0.05, 0.05, 0.2, 0.2]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.15, 0.55, 1),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [0.05, 0.05, 0.2, 0.2]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Core:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sparks:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Smoke:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 0.55, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/10/type = "value"
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/path = NodePath("Light:light_multiplier")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = {
"times": PackedFloat32Array(0, 0.55, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="Animation" id="Animation_yy7r0"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.05]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.05]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Core:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sparks:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Smoke:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/10/type = "value"
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/path = NodePath("Light:light_multiplier")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_tw8oj"]
_data = {
&"RESET": SubResource("Animation_yy7r0"),
&"main": SubResource("Animation_ms5jo")
}
[node name="VFXImpact_04" type="Node3D"]
script = ExtResource("1_hdc0q")
primary_color = Color(0.917647, 0.439216, 0, 1)
secondary_color = Color(1, 0.627451, 0.294118, 1)
tertiary_color = Color(0.317647, 0.317647, 0.219608, 1)
light_color = Color(0.917647, 0.439216, 0, 1)
[node name="Core" type="GPUParticles3D" parent="."]
sorting_offset = 0.5
material_override = SubResource("ShaderMaterial_3tcg6")
emitting = false
amount = 1
lifetime = 1.6
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_2j8l2")
draw_pass_1 = SubResource("SphereMesh_dc2st")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_rhnvq")
emitting = false
amount = 16
lifetime = 0.5
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_iqw3l")
draw_pass_1 = SubResource("QuadMesh_omfat")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = 0.2
material_override = SubResource("ShaderMaterial_3w10a")
emitting = false
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_mbt53")
draw_pass_1 = SubResource("SphereMesh_kl6uu")
[node name="Ground_Impact" type="MeshInstance3D" parent="."]
layers = 540672
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_dc2st")
mesh = SubResource("PlaneMesh_uetuo")
[node name="Impact_Streaks2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.8, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_1d7b2")
mesh = SubResource("CylinderMesh_yy7r0")
[node name="Impact_Streaks1" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.4, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_uyueq")
mesh = SubResource("CylinderMesh_hdc0q")
[node name="Decal" type="Decal" parent="."]
size = Vector3(3, 3, 3)
texture_albedo = ExtResource("6_nw0c3")
texture_emission = ExtResource("7_2j8l2")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(0.917647, 0.439216, 0, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("8_dc2st")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_tw8oj")
}

View File

@@ -0,0 +1,643 @@
[gd_scene load_steps=57 format=3 uid="uid://dgct4mxupvyvi"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_am62u"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_rr123"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://assets/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="2_am62u"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="3_8q4jv"]
[ext_resource type="Shader" uid="uid://dw1bkef40wjyi" path="res://assets/BinbunVFX/impact_explosions/src/shader/ground_impact.gdshader" id="4_b5ep3"]
[ext_resource type="Shader" uid="uid://7acg1ejnsqij" path="res://assets/BinbunVFX/impact_explosions/src/shader/impact_streaks.gdshader" id="5_chide"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="6_iidpi"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="7_k6d2x"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="8_s328v"]
[sub_resource type="Gradient" id="Gradient_am62u"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_iidpi"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_k6d2x"]
seamless = true
color_ramp = SubResource("Gradient_am62u")
noise = SubResource("FastNoiseLite_iidpi")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3533t"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_rr123")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_k6d2x")
shader_parameter/primary_color = Color(1, 0.560784, 0.462745, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_2sgf2"]
_data = [Vector2(0, 0), 0.0, 0.439471, 0, 0, Vector2(1, 1), 1.98161, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_rrrcj"]
curve = SubResource("Curve_2sgf2")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_amm2i"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.8
alpha_curve = SubResource("CurveTexture_rrrcj")
[sub_resource type="SphereMesh" id="SphereMesh_5oy36"]
radius = 0.8
height = 0.2
radial_segments = 32
rings = 16
is_hemisphere = true
[sub_resource type="Gradient" id="Gradient_rr123"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_am62u"]
gradient = SubResource("Gradient_rr123")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8q4jv"]
render_priority = 0
shader = ExtResource("2_am62u")
shader_parameter/shape_texture = SubResource("GradientTexture2D_am62u")
shader_parameter/primary_color = Color(1, 0.560784, 0.462745, 1)
shader_parameter/secondary_color = Color(1, 0.337255, 0, 1)
[sub_resource type="Curve" id="Curve_rr123"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.87029, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_am62u"]
curve = SubResource("Curve_rr123")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_8q4jv"]
particle_flag_align_y = true
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
spread = 30.0
initial_velocity_min = 5.0
initial_velocity_max = 15.0
damping_min = 5.0
damping_max = 10.0
scale_min = 0.5
scale_curve = SubResource("CurveTexture_am62u")
[sub_resource type="QuadMesh" id="QuadMesh_k6d2x"]
size = Vector2(0.05, 0.4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_rr123"]
seed = 2
fractal_type = 2
fractal_octaves = 3
fractal_gain = 0.55
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 10.0
domain_warp_frequency = 0.02
domain_warp_fractal_octaves = 2
domain_warp_fractal_lacunarity = 4.165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_am62u"]
seamless = true
normalize = false
noise = SubResource("FastNoiseLite_rr123")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_8q4jv"]
noise_type = 2
frequency = 0.04
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_b5ep3"]
width = 128
height = 128
invert = true
seamless = true
noise = SubResource("FastNoiseLite_8q4jv")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_chide"]
render_priority = 0
shader = ExtResource("3_8q4jv")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_b5ep3")
shader_parameter/glow_noise_texture = SubResource("NoiseTexture2D_am62u")
shader_parameter/primary_color = Color(1, 0.560784, 0.462745, 1)
shader_parameter/tertiary_color = Color(0.57, 0.312645, 0.2109, 1)
shader_parameter/time_scale = Vector2(0, 0.3)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/noise_scale = 0.6
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 2.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_iidpi"]
_data = [Vector2(0, 0.47191), 0.0, 0.0, 0, 0, Vector2(1, 0), -0.45351, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_k6d2x"]
curve = SubResource("Curve_iidpi")
[sub_resource type="Gradient" id="Gradient_s328v"]
offsets = PackedFloat32Array(0, 0.494872, 1)
colors = PackedColorArray(1, 1, 1, 1, 0.623529, 0.921569, 0.921569, 1, 0.87451, 0.87451, 0.87451, 0.258824)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_3533t"]
gradient = SubResource("Gradient_s328v")
[sub_resource type="Gradient" id="Gradient_2sgf2"]
offsets = PackedFloat32Array(0.133333, 0.735897)
colors = PackedColorArray(1, 0, 0, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_rrrcj"]
gradient = SubResource("Gradient_2sgf2")
[sub_resource type="Curve" id="Curve_amm2i"]
_data = [Vector2(0.00265958, 0.542916), 0.0, 1.14448, 0, 0, Vector2(1, 1), 5.21194e-07, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_5oy36"]
curve = SubResource("Curve_amm2i")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_yp81r"]
particle_flag_align_y = true
emission_shape_offset = Vector3(0, 0.5, 0)
emission_shape = 3
emission_box_extents = Vector3(0.2, 0.1, 0.2)
angle_min = -720.0
angle_max = 720.0
direction = Vector3(0, 1, 0)
initial_velocity_min = 1.0
initial_velocity_max = 4.0
gravity = Vector3(0, 0, 0)
damping_min = 3.0
damping_max = 5.0
scale_min = 0.2
scale_curve = SubResource("CurveTexture_5oy36")
color_ramp = SubResource("GradientTexture1D_rrrcj")
color_initial_ramp = SubResource("GradientTexture1D_3533t")
alpha_curve = SubResource("CurveTexture_k6d2x")
[sub_resource type="SphereMesh" id="SphereMesh_ptibk"]
radius = 1.0
height = 0.5
radial_segments = 32
rings = 16
[sub_resource type="FastNoiseLite" id="FastNoiseLite_am62u"]
noise_type = 4
fractal_type = 3
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 16.5
domain_warp_fractal_gain = 0.2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_8q4jv"]
noise = SubResource("FastNoiseLite_am62u")
[sub_resource type="Gradient" id="Gradient_b5ep3"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_chide"]
gradient = SubResource("Gradient_b5ep3")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_iidpi"]
render_priority = 0
shader = ExtResource("4_b5ep3")
shader_parameter/shape_texture = SubResource("GradientTexture2D_chide")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_8q4jv")
shader_parameter/primary_color = Color(1, 0.560784, 0.462745, 1)
shader_parameter/secondary_color = Color(1, 0.337255, 0, 1)
shader_parameter/decay = 0.0
shader_parameter/alpha_mode = 0
[sub_resource type="PlaneMesh" id="PlaneMesh_rr123"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_chide"]
noise_type = 3
frequency = 0.005
fractal_type = 3
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 29.885
domain_warp_frequency = 0.02
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_iidpi"]
seamless = true
noise = SubResource("FastNoiseLite_chide")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_s328v"]
render_priority = 0
shader = ExtResource("5_chide")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_iidpi")
shader_parameter/primary_color = Color(1, 0.560784, 0.462745, 1)
shader_parameter/secondary_color = Color(1, 0.337255, 0, 1)
shader_parameter/texture_scale = Vector2(3, 1)
shader_parameter/time_scale = Vector2(-0.1, 0.1)
shader_parameter/grow = 0.0518914
shader_parameter/decay = 0.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_2sgf2"]
top_radius = 1.6
bottom_radius = 0.6
height = 1.4
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_b5ep3"]
noise_type = 0
frequency = 0.003
offset = Vector3(412.7, 0, 0)
fractal_type = 3
fractal_octaves = 2
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 20.0
domain_warp_frequency = 0.04
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_chide"]
seamless = true
seamless_blend_skirt = 0.5
noise = SubResource("FastNoiseLite_b5ep3")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_k6d2x"]
render_priority = 0
shader = ExtResource("5_chide")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_chide")
shader_parameter/primary_color = Color(1, 0.560784, 0.462745, 1)
shader_parameter/secondary_color = Color(1, 0.337255, 0, 1)
shader_parameter/texture_scale = Vector2(4, 1)
shader_parameter/time_scale = Vector2(0.1, 0.1)
shader_parameter/grow = 0.3
shader_parameter/decay = 0.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_yp81r"]
top_radius = 1.6
bottom_radius = 0.0
height = 0.4
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="Animation" id="Animation_s328v"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.3]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Core:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Smoke:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sparks:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_rr123"]
resource_name = "main"
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.05, 0.5, 1),
"transitions": PackedFloat32Array(0.2, 0.5, 1, 1),
"update": 0,
"values": [0.3, 0.1, 0.03, 0.03]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.05, 0.65, 1),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 0.0, 0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.1, 0.5, 1),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 0.0, 0.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Core:emitting")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.05),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Smoke:emitting")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0.05),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sparks:emitting")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0, 0.5, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Light:light_multiplier")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 0.5, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Decal:emission_energy")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 0.5, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Decal:albedo_mix")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0, 0.5, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_am62u"]
_data = {
&"RESET": SubResource("Animation_s328v"),
&"main": SubResource("Animation_rr123")
}
[node name="VFXImpact_05" type="Node3D"]
script = ExtResource("1_am62u")
primary_color = Color(1, 0.560784, 0.462745, 1)
secondary_color = Color(1, 0.337255, 0, 1)
tertiary_color = Color(0.57, 0.312645, 0.2109, 1)
light_color = Color(1, 0.560784, 0.462745, 1)
[node name="Core" type="GPUParticles3D" parent="."]
material_override = SubResource("ShaderMaterial_3533t")
emitting = false
amount = 1
lifetime = 0.8
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_amm2i")
draw_pass_1 = SubResource("SphereMesh_5oy36")
[node name="Sparks" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_8q4jv")
emitting = false
amount = 32
lifetime = 0.5
one_shot = true
explosiveness = 1.0
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_8q4jv")
draw_pass_1 = SubResource("QuadMesh_k6d2x")
[node name="Smoke" type="GPUParticles3D" parent="."]
layers = 540672
sorting_offset = 0.2
material_override = SubResource("ShaderMaterial_chide")
emitting = false
amount = 16
lifetime = 0.8
one_shot = true
explosiveness = 1.0
process_material = SubResource("ParticleProcessMaterial_yp81r")
draw_pass_1 = SubResource("SphereMesh_ptibk")
[node name="Ground_Impact" type="MeshInstance3D" parent="."]
layers = 540672
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_iidpi")
mesh = SubResource("PlaneMesh_rr123")
[node name="Impact_Streaks2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.7, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_s328v")
mesh = SubResource("CylinderMesh_2sgf2")
[node name="Impact_Streaks1" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.2, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_k6d2x")
mesh = SubResource("CylinderMesh_yp81r")
[node name="Decal" type="Decal" parent="."]
size = Vector3(3, 3, 3)
texture_albedo = ExtResource("6_iidpi")
texture_emission = ExtResource("7_k6d2x")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.560784, 0.462745, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("8_s328v")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_am62u")
}

View File

@@ -0,0 +1,536 @@
[gd_scene load_steps=45 format=3 uid="uid://ditmybmcrt283"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://assets/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_1ainm"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://assets/BinbunVFX/shared/script/vfx_controller.gd" id="1_cpglc"]
[ext_resource type="Shader" uid="uid://dw1bkef40wjyi" path="res://assets/BinbunVFX/impact_explosions/src/shader/ground_impact.gdshader" id="2_cpglc"]
[ext_resource type="Shader" uid="uid://bf8eiigjam2fr" path="res://assets/BinbunVFX/impact_explosions/src/shader/explostion_ring.gdshader" id="3_hekmx"]
[ext_resource type="Shader" uid="uid://7acg1ejnsqij" path="res://assets/BinbunVFX/impact_explosions/src/shader/impact_streaks.gdshader" id="3_i6n1f"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://assets/BinbunVFX/shared/texture/cracks_01.png" id="4_hekmx"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://assets/BinbunVFX/shared/texture/cracks_emission_01.png" id="5_j1n3n"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://assets/BinbunVFX/shared/script/vfx_light.gd" id="6_uiprv"]
[sub_resource type="Gradient" id="Gradient_l6bhb"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_6r8sx"]
noise_type = 2
frequency = 0.02
fractal_octaves = 1
domain_warp_enabled = true
domain_warp_type = 2
domain_warp_amplitude = 5.0
domain_warp_fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_7aqx2"]
seamless = true
color_ramp = SubResource("Gradient_l6bhb")
noise = SubResource("FastNoiseLite_6r8sx")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3syo3"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("1_1ainm")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_7aqx2")
shader_parameter/primary_color = Color(1, 0.454902, 0, 1)
shader_parameter/texture_scale = Vector2(1, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="Curve" id="Curve_jtj2s"]
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_4kqba"]
curve = SubResource("Curve_jtj2s")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_rcnau"]
angle_min = -720.0
angle_max = 799.5
spread = 180.0
flatness = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.8
alpha_curve = SubResource("CurveTexture_4kqba")
[sub_resource type="SphereMesh" id="SphereMesh_3ky6y"]
radius = 0.8
height = 0.8
radial_segments = 32
rings = 16
is_hemisphere = true
[sub_resource type="FastNoiseLite" id="FastNoiseLite_i6n1f"]
noise_type = 2
fractal_octaves = 3
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_hekmx"]
seamless = true
noise = SubResource("FastNoiseLite_i6n1f")
[sub_resource type="Gradient" id="Gradient_j1n3n"]
offsets = PackedFloat32Array(0.868159, 0.980099, 1)
colors = PackedColorArray(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_uiprv"]
gradient = SubResource("Gradient_j1n3n")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_l6bhb"]
render_priority = 0
shader = ExtResource("3_hekmx")
shader_parameter/ring_texture = SubResource("GradientTexture2D_uiprv")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_hekmx")
shader_parameter/primary_color = Color(1, 0.294118, 0.0666667, 1)
shader_parameter/secondary_color = Color(0.713726, 0.192157, 0, 1)
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 4.0
shader_parameter/alpha_mode = 1
[sub_resource type="Curve" id="Curve_6r8sx"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.57182, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_7aqx2"]
curve = SubResource("Curve_6r8sx")
[sub_resource type="Curve" id="Curve_3syo3"]
_data = [Vector2(0, 0), 0.0, 6.09936, 0, 0, Vector2(0.216346, 0.856486), 0.699631, 0.699631, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_jtj2s"]
curve = SubResource("Curve_3syo3")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_4kqba"]
angle_min = 1.07288e-05
angle_max = 1.07288e-05
direction = Vector3(0, 1, 0)
spread = 90.0
initial_velocity_min = -1.0
initial_velocity_max = 1.0
gravity = Vector3(0, 0, 0)
scale_min = 0.6
scale_max = 1.2
scale_curve = SubResource("CurveTexture_jtj2s")
alpha_curve = SubResource("CurveTexture_7aqx2")
[sub_resource type="QuadMesh" id="QuadMesh_i6n1f"]
size = Vector2(4, 4)
orientation = 1
[sub_resource type="FastNoiseLite" id="FastNoiseLite_b5pcy"]
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_3f5vg"]
noise = SubResource("FastNoiseLite_b5pcy")
[sub_resource type="Gradient" id="Gradient_imq44"]
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_gsjnu"]
gradient = SubResource("Gradient_imq44")
width = 256
height = 256
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(0.5, 0)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_tn6s4"]
render_priority = 0
shader = ExtResource("2_cpglc")
shader_parameter/shape_texture = SubResource("GradientTexture2D_gsjnu")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_3f5vg")
shader_parameter/primary_color = Color(1, 0.454902, 0, 1)
shader_parameter/secondary_color = Color(1, 0.270588, 0.0392157, 1)
shader_parameter/decay = 0.0
shader_parameter/alpha_mode = 0
[sub_resource type="PlaneMesh" id="PlaneMesh_xgc35"]
size = Vector2(4, 4)
subdivide_width = 32
subdivide_depth = 32
[sub_resource type="FastNoiseLite" id="FastNoiseLite_2lstl"]
noise_type = 2
frequency = 0.02
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_gisu5"]
seamless = true
noise = SubResource("FastNoiseLite_2lstl")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_573mb"]
render_priority = 0
shader = ExtResource("3_i6n1f")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_gisu5")
shader_parameter/primary_color = Color(1, 0.454902, 0, 1)
shader_parameter/secondary_color = Color(1, 0.270588, 0.0392157, 1)
shader_parameter/texture_scale = Vector2(3, 1)
shader_parameter/time_scale = Vector2(-0.1, 0.1)
shader_parameter/grow = 0.04
shader_parameter/decay = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_n55o1"]
top_radius = 1.2
bottom_radius = 0.0
height = 1.0
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="FastNoiseLite" id="FastNoiseLite_7dous"]
noise_type = 2
frequency = 0.02
offset = Vector3(412.7, 0, 0)
fractal_octaves = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_sg858"]
seamless = true
seamless_blend_skirt = 0.5
noise = SubResource("FastNoiseLite_7dous")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_2n5mr"]
render_priority = 0
shader = ExtResource("3_i6n1f")
shader_parameter/noise_texture = SubResource("NoiseTexture2D_sg858")
shader_parameter/primary_color = Color(1, 0.454902, 0, 1)
shader_parameter/secondary_color = Color(1, 0.270588, 0.0392157, 1)
shader_parameter/texture_scale = Vector2(4, 1)
shader_parameter/time_scale = Vector2(0.1, 0.1)
shader_parameter/grow = 0.16
shader_parameter/decay = 1.0
shader_parameter/proximity_fade = false
shader_parameter/proximity_fade_distance = 1.0
shader_parameter/alpha_mode = 0
[sub_resource type="CylinderMesh" id="CylinderMesh_1oo0j"]
top_radius = 2.0
bottom_radius = 0.0
height = 0.4
radial_segments = 32
cap_top = false
cap_bottom = false
[sub_resource type="Animation" id="Animation_1ainm"]
resource_name = "main"
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.433333, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [0.0, 1.0, 1.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.1, 0.433333, 1),
"transitions": PackedFloat32Array(1, 0.366021, 1, 1),
"update": 0,
"values": [0.52, 0.1, 0.05, 0.52]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.166667, 0.433333),
"transitions": PackedFloat32Array(2, 1, 1),
"update": 0,
"values": [0.0, 1.0, 0.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.1, 0.166667, 0.433333, 1),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
"update": 0,
"values": [0.4, 0.16, 0.05, 0.05, 0.4]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 0.1, 0.433333),
"transitions": PackedFloat32Array(1, 2, 1),
"update": 0,
"values": [0.0, 1.0, 0.0]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Decal:emission_energy")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0, 0.7, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [4.0, 0.0, 0.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Decal:albedo_mix")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 0.7, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Light:light_multiplier")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 0.433333, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [1.0, 0.0, 0.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Rings:emitting")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
[sub_resource type="Animation" id="Animation_cpglc"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Core:emitting")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Ground_Impact:material_override:shader_parameter/decay")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Impact_Streaks2:material_override:shader_parameter/grow")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.04]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Impact_Streaks1:material_override:shader_parameter/decay")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Impact_Streaks1:material_override:shader_parameter/grow")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.16]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Impact_Streaks2:material_override:shader_parameter/decay")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("Decal:emission_energy")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [4.0]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("Decal:albedo_mix")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("Light:light_multiplier")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
tracks/9/type = "value"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath("Rings:emitting")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_cpglc"]
_data = {
&"RESET": SubResource("Animation_cpglc"),
&"main": SubResource("Animation_1ainm")
}
[node name="VFXImpact_06" type="Node3D"]
script = ExtResource("1_cpglc")
primary_color = Color(1, 0.454902, 0, 1)
secondary_color = Color(1, 0.270588, 0.0392157, 1)
light_color = Color(1, 0.454902, 0, 1)
[node name="Core" type="GPUParticles3D" parent="."]
sorting_offset = 0.5
material_override = SubResource("ShaderMaterial_3syo3")
emitting = false
amount = 1
lifetime = 0.8
one_shot = true
explosiveness = 0.8
process_material = SubResource("ParticleProcessMaterial_rcnau")
draw_pass_1 = SubResource("SphereMesh_3ky6y")
[node name="Rings" type="GPUParticles3D" parent="."]
layers = 540672
material_override = SubResource("ShaderMaterial_l6bhb")
emitting = false
amount = 1
one_shot = true
explosiveness = 0.9
process_material = SubResource("ParticleProcessMaterial_4kqba")
draw_pass_1 = SubResource("QuadMesh_i6n1f")
[node name="Ground_Impact" type="MeshInstance3D" parent="."]
layers = 540672
sorting_offset = -0.5
material_override = SubResource("ShaderMaterial_tn6s4")
mesh = SubResource("PlaneMesh_xgc35")
[node name="Impact_Streaks2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_573mb")
mesh = SubResource("CylinderMesh_n55o1")
[node name="Impact_Streaks1" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.2, 0)
layers = 540672
material_override = SubResource("ShaderMaterial_2n5mr")
mesh = SubResource("CylinderMesh_1oo0j")
[node name="Decal" type="Decal" parent="."]
size = Vector3(3, 3, 3)
texture_albedo = ExtResource("4_hekmx")
texture_emission = ExtResource("5_j1n3n")
emission_energy = 4.0
modulate = Color(1, 0.32549, 0, 1)
cull_mask = 507903
[node name="Light" type="OmniLight3D" parent="."]
light_color = Color(1, 0.454902, 0, 1)
light_energy = 8.0
light_size = 4.0
light_cull_mask = 4294426623
omni_range = 8.0
script = ExtResource("6_uiprv")
base_energy = 8.0
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_cpglc")
}