Compare commits

..

8 Commits

383 changed files with 163787 additions and 2333 deletions

2
.gitignore vendored
View File

@@ -1,4 +1,4 @@
# Godot 4+ specific ignores # Godot 4+ specific ignores
.godot/ .godot/
/android/ /android/
/audio/music/ /audio/old-music/

View File

@@ -0,0 +1,14 @@
[configuration]
entry_symbol = "gdext_rust_init"
compatibility_minimum = 4.1
reloadable = false
[libraries]
linux.debug.x86_64 = "bin/libnodetunnel.so"
linux.release.x86_64 = "bin/libnodetunnel.so"
windows.debug.x86_64 = "bin/nodetunnel.dll"
windows.release.x86_64 = "bin/nodetunnel.dll"
macos.debug = "bin/libnodetunnel.dylib"
macos.release = "bin/libnodetunnel.dylib"
macos.debug.arm64 = "bin/libnodetunnel.dylib"
macos.release.arm64 = "bin/libnodetunnel.dylib"

View File

@@ -0,0 +1 @@
uid://bdmh2wm33k6po

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,7 @@
[plugin]
name="NodeTunnel"
description="Relay implementation for Godot's High-Level Multiplayer API"
author="curtjs"
version="1.1.0_beta"
script="setup.gd"

View File

@@ -0,0 +1,11 @@
@tool
extends EditorPlugin
var update_check = preload("updater/update_check.gd").new()
func _enter_tree():
add_child(update_check)
update_check.check_update(get_plugin_version())
func _exit_tree():
update_check.queue_free()

View File

@@ -0,0 +1 @@
uid://db4cwcsqdpmym

View File

@@ -0,0 +1,52 @@
extends Node
const RELEASE_URL = "https://api.github.com/repos/NodeTunnel/godot-plugin/releases/latest"
var http := HTTPRequest.new()
var plugin_version: String
func _init() -> void:
add_child(http)
func check_update(current: String) -> void:
plugin_version = current
var err = http.request(RELEASE_URL)
if err != OK:
return
http.request_completed.connect(_handle_res)
func _handle_res(result, response_code, headers, body: PackedByteArray):
if response_code != 200:
return
var json = JSON.parse_string(body.get_string_from_utf8())
if json == null:
return
var latest: String = json.get("tag_name", "")
if latest:
var res = _compare(plugin_version, latest)
if res == -1:
print(plugin_version)
print("[NodeTunnel] v%s available! (Currently on: v)" % latest, plugin_version)
func _compare(v1: String, v2: String) -> int:
v1 = v1.split("_", true, 1)[0]
v2 = v2.split("_", true, 1)[0]
var versions_1 := v1.split(".")
var versions_2 := v2.split(".")
for i in max(versions_1.size(), versions_2.size()):
var v1v := int(versions_1[i]) if i < versions_1.size() else 0
var v2v := int(versions_2[i]) if i < versions_2.size() else 0
if v1v > v2v:
return 1
elif v1v < v2v:
return -1
return 0

View File

@@ -0,0 +1 @@
uid://cx4apmy510a7i

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dcnabkekal1n5"
path="res://.godot/imported/Industrial Cyberbreak Intensity 2.wav-5c9e710ae5e76b98f3078509772daa85.sample"
[deps]
source_file="res://audio/music/Industrial Cyberbreak Intensity 2.wav"
dest_files=["res://.godot/imported/Industrial Cyberbreak Intensity 2.wav-5c9e710ae5e76b98f3078509772daa85.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cr0n18se6jnig"
path="res://.godot/imported/Industrial Matts Fridge Intensity 2.wav-b260407d746f5b5fe13afee581aeecae.sample"
[deps]
source_file="res://audio/music/Industrial Matts Fridge Intensity 2.wav"
dest_files=["res://.godot/imported/Industrial Matts Fridge Intensity 2.wav-b260407d746f5b5fe13afee581aeecae.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://hhercepbwkku"
path="res://.godot/imported/Industrial Tech Savvy Intensity 2.wav-cb38f73e48098a5bd96874e8ee5c2bfa.sample"
[deps]
source_file="res://audio/music/Industrial Tech Savvy Intensity 2.wav"
dest_files=["res://.godot/imported/Industrial Tech Savvy Intensity 2.wav-cb38f73e48098a5bd96874e8ee5c2bfa.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dxy4k2lqk3rs3"
path="res://.godot/imported/cooking_sizzle_burn_fry_02.wav-f787e99be01b173ed091153d0e30016e.sample"
[deps]
source_file="res://audio/sounds/cooking_sizzle_burn_fry_02.wav"
dest_files=["res://.godot/imported/cooking_sizzle_burn_fry_02.wav-f787e99be01b173ed091153d0e30016e.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://brbowqjppcm75"
path="res://.godot/imported/cooking_sizzle_burn_fry_04.wav-21277036b3eb648512684b6d7f95c41e.sample"
[deps]
source_file="res://audio/sounds/cooking_sizzle_burn_fry_04.wav"
dest_files=["res://.godot/imported/cooking_sizzle_burn_fry_04.wav-21277036b3eb648512684b6d7f95c41e.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://c3ekayg7qik2e"
path="res://.godot/imported/footstep_concrete_walk_01.wav-e3ae87ae9db445bbacad658f6d82b2c6.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_01.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_01.wav-e3ae87ae9db445bbacad658f6d82b2c6.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dgsrsmcqc0iu5"
path="res://.godot/imported/footstep_concrete_walk_02.wav-8352cc147866c42f6083546274c7c8a2.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_02.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_02.wav-8352cc147866c42f6083546274c7c8a2.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://ckn3n8xraa8tn"
path="res://.godot/imported/footstep_concrete_walk_03.wav-295b59baf1eb968c0091aba74b95db86.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_03.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_03.wav-295b59baf1eb968c0091aba74b95db86.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dt65omjsdlwcj"
path="res://.godot/imported/footstep_concrete_walk_04.wav-514b94040e18f149660bd63d84e554f0.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_04.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_04.wav-514b94040e18f149660bd63d84e554f0.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cpicaep2bnlsm"
path="res://.godot/imported/footstep_concrete_walk_05.wav-89b193c362b1b29c353278f19fdd681a.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_05.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_05.wav-89b193c362b1b29c353278f19fdd681a.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://bg880vnnsjb7o"
path="res://.godot/imported/footstep_concrete_walk_06.wav-8e1e7e72b31315630c6910dad19ba836.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_06.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_06.wav-8e1e7e72b31315630c6910dad19ba836.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dlqqqafegc7v1"
path="res://.godot/imported/footstep_concrete_walk_07.wav-03f9381f6f566d5f9686f4c65a26de08.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_07.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_07.wav-03f9381f6f566d5f9686f4c65a26de08.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://c75d8a1fuwww0"
path="res://.godot/imported/footstep_concrete_walk_08.wav-add78472cf177a35007302aa4f3b472e.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_08.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_08.wav-add78472cf177a35007302aa4f3b472e.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cs77a4en5jhvo"
path="res://.godot/imported/footstep_concrete_walk_09.wav-d79665ca14c01502631e4e01ba905e75.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_09.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_09.wav-d79665ca14c01502631e4e01ba905e75.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://by8eqkml50kb7"
path="res://.godot/imported/footstep_concrete_walk_10.wav-75e337b8832878f3fa4e0624dfabb665.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_10.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_10.wav-75e337b8832878f3fa4e0624dfabb665.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://pt5intr0pn6l"
path="res://.godot/imported/footstep_concrete_walk_11.wav-5e2d5774b7adce6f70b0764ab3a56eaa.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_11.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_11.wav-5e2d5774b7adce6f70b0764ab3a56eaa.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cumpw2fmjfn2w"
path="res://.godot/imported/footstep_concrete_walk_12.wav-dce6d80b03d559af072ef33f7464e62f.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_12.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_12.wav-dce6d80b03d559af072ef33f7464e62f.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://duhtll417eht0"
path="res://.godot/imported/footstep_concrete_walk_13.wav-a4d1afab52662421344e881e27c3a135.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_13.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_13.wav-a4d1afab52662421344e881e27c3a135.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://c782uybqjafcg"
path="res://.godot/imported/footstep_concrete_walk_14.wav-815967ddfeb242ae245e828e3463483e.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_14.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_14.wav-815967ddfeb242ae245e828e3463483e.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://bjkjbl544265f"
path="res://.godot/imported/footstep_concrete_walk_15.wav-fcf99c15514c0810f2fbe69ea1c28663.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_15.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_15.wav-fcf99c15514c0810f2fbe69ea1c28663.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://djj1qcrxpprje"
path="res://.godot/imported/footstep_concrete_walk_16.wav-77ccc668874f5573aefa965699e05452.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_16.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_16.wav-77ccc668874f5573aefa965699e05452.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://casotla8stgt0"
path="res://.godot/imported/footstep_concrete_walk_17.wav-75fdb911ad43880c5090d7c414c59ab1.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_17.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_17.wav-75fdb911ad43880c5090d7c414c59ab1.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://tkwkoewb5v13"
path="res://.godot/imported/footstep_concrete_walk_18.wav-5f3650075c23a195df68ba9b1b8b525e.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_18.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_18.wav-5f3650075c23a195df68ba9b1b8b525e.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://fbi2d6pqkom7"
path="res://.godot/imported/footstep_concrete_walk_19.wav-fa35fc45ed52adb6dda51c8bcf7ee5a7.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_19.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_19.wav-fa35fc45ed52adb6dda51c8bcf7ee5a7.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://bcb8npoint2j6"
path="res://.godot/imported/footstep_concrete_walk_20.wav-32ee676a531f9e9db638b7c8d1ba25e6.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_20.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_20.wav-32ee676a531f9e9db638b7c8d1ba25e6.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dk2or4pfh2mq8"
path="res://.godot/imported/footstep_concrete_walk_21.wav-36aeee22f1dded465c6f991b1c825d70.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_21.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_21.wav-36aeee22f1dded465c6f991b1c825d70.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://5lx0n2jgf687"
path="res://.godot/imported/footstep_concrete_walk_22.wav-380baa40ba33723b6f10df22e97467aa.sample"
[deps]
source_file="res://audio/sounds/footstep_concrete_walk_22.wav"
dest_files=["res://.godot/imported/footstep_concrete_walk_22.wav-380baa40ba33723b6f10df22e97467aa.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

View File

@@ -12,6 +12,9 @@ Ranged Shots -
- Hitech Shot C.wav - Hitech Shot C.wav
****Gamemaster Audio ****Gamemaster Audio
Lasersword Hits
-cooking_sizzle_burn_fry_02.wav
-cooking_sizzle_burn_fry_04.wav
Trap Place - impact_deep_thud_bounce_09.wav Trap Place - impact_deep_thud_bounce_09.wav
Explosions Explosions
- explosion_large_01.wav - explosion_large_01.wav
@@ -30,10 +33,37 @@ Explosions
- explosion_small_04.wav - explosion_small_04.wav
Gas Square Gas Square
- gas_leak_med_burst_01.wav - gas_leak_med_burst_01.wav
Walk
- footstep_concrete_walk_01.wav
- footstep_concrete_walk_02.wav
- footstep_concrete_walk_03.wav
- footstep_concrete_walk_04.wav
- footstep_concrete_walk_05.wav
- footstep_concrete_walk_06.wav
- footstep_concrete_walk_07.wav
- footstep_concrete_walk_08.wav
- footstep_concrete_walk_09.wav
- footstep_concrete_walk_10.wav
- footstep_concrete_walk_11.wav
- footstep_concrete_walk_12.wav
- footstep_concrete_walk_13.wav
- footstep_concrete_walk_14.wav
- footstep_concrete_walk_15.wav
- footstep_concrete_walk_16.wav
- footstep_concrete_walk_17.wav
- footstep_concrete_walk_18.wav
- footstep_concrete_walk_19.wav
- footstep_concrete_walk_20.wav
- footstep_concrete_walk_21.wav
- footstep_concrete_walk_22.wav
Reload - sci-fi_weapon_reload_03.wav Reload - sci-fi_weapon_reload_03.wav
Disarm Tap - metal_tiny_hit_impact_01.wav Disarm Tap - metal_tiny_hit_impact_01.wav
FP Fling - sci-fi_forcefield_hum_loop_02.wav FP Fling - sci-fi_forcefield_hum_loop_02.wav
****TomWinandy ****TomWinandy
FP Startup - TomWinandySFX UI ScifiTech Start 06.wav FP Startup - TomWinandySFX UI ScifiTech Start 06.wav

4
data/hackset.gd Normal file
View File

@@ -0,0 +1,4 @@
class_name HackSet extends Resource
@export var type : Hack.Type
@export var qty : int

View File

@@ -19,5 +19,7 @@ class_name PawnBaseData extends Resource
var model var model
@export var portrait : Texture2D @export var portrait : Texture2D
@export var nameplate : Texture2D @export var nameplate : Texture2D
@export var name_audio : AudioStream
@export var pawn_body : PackedScene
@export var starting_traps : Array[TrapSet] = [null, null, null] @export var starting_hacks : Array[HackSet] = [null, null, null]

44
data/pawns/a.tres Normal file
View File

@@ -0,0 +1,44 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://yosnkcj4ci4v"]
[ext_resource type="AudioStream" uid="uid://dhlg3pk3tbirp" path="res://external/sample audio/a.wav" id="1_mtelv"]
[ext_resource type="PackedScene" uid="uid://c3s6gqy0s5kus" path="res://templates/pawns/a.tscn" id="2_mtelv"]
[ext_resource type="Texture2D" uid="uid://13pdg1vs81as" path="res://external/test portraits/a.png" id="3_qt3l7"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_3x7pt"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_lwcbw"]
[sub_resource type="Resource" id="Resource_4g7al"]
script = ExtResource("5_lwcbw")
type = 1
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_8dqhi"]
script = ExtResource("5_lwcbw")
type = 5
qty = 6
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_32lt6"]
script = ExtResource("5_lwcbw")
type = 2
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("4_3x7pt")
name = "A"
move_speed = 3.0
life = 75
max_life = 75
ammo = 2
max_ammo = 2
melee_damage = 12
range_damage = 12
range_time = 1.0
melee_time = 1.25
reload_time = 1.75
portrait = ExtResource("3_qt3l7")
name_audio = ExtResource("1_mtelv")
pawn_body = ExtResource("2_mtelv")
starting_hacks = Array[ExtResource("5_lwcbw")]([SubResource("Resource_4g7al"), SubResource("Resource_8dqhi"), SubResource("Resource_32lt6")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,40 +0,0 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=7 format=3 uid="uid://yosnkcj4ci4v"]
[ext_resource type="Texture2D" uid="uid://3dj2p3xerc45" path="res://visuals/images/temp_portraits/tg-abdoll-relin.jpg" id="1_4g7al"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/trapset.gd" id="2_4g7al"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_8dqhi"]
[sub_resource type="Resource" id="Resource_qrt0o"]
script = ExtResource("2_4g7al")
type = 1
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_4g7al"]
script = ExtResource("2_4g7al")
type = 5
qty = 6
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_8dqhi"]
script = ExtResource("2_4g7al")
type = 2
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("2_8dqhi")
name = "Abdoll Relin"
move_speed = 3.0
life = 75
max_life = 75
ammo = 2
max_ammo = 2
melee_damage = 12
range_damage = 12
range_time = 1.0
melee_time = 1.25
reload_time = 1.75
portrait = ExtResource("1_4g7al")
starting_traps = Array[ExtResource("2_4g7al")]([SubResource("Resource_qrt0o"), SubResource("Resource_4g7al"), SubResource("Resource_8dqhi")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

43
data/pawns/b.tres Normal file
View File

@@ -0,0 +1,43 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://df4gqi1us2dwu"]
[ext_resource type="AudioStream" uid="uid://7dsv6kcptvar" path="res://external/sample audio/b.wav" id="1_vp6uu"]
[ext_resource type="PackedScene" uid="uid://bum67b50tn8ye" path="res://templates/pawns/b.tscn" id="2_vp6uu"]
[ext_resource type="Texture2D" uid="uid://ca6iihdssrh14" path="res://external/test portraits/b.png" id="3_qojdv"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_0gp76"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_ic2r4"]
[sub_resource type="Resource" id="Resource_sb8f5"]
script = ExtResource("5_ic2r4")
type = 4
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_tu5w7"]
script = ExtResource("5_ic2r4")
qty = 6
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_idp5c"]
script = ExtResource("5_ic2r4")
type = 2
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("4_0gp76")
name = "B"
move_speed = 2.5
life = 125
max_life = 125
ammo = 3
max_ammo = 3
melee_damage = 10
range_damage = 20
range_time = 0.75
melee_time = 1.0
reload_time = 1.75
portrait = ExtResource("3_qojdv")
name_audio = ExtResource("1_vp6uu")
pawn_body = ExtResource("2_vp6uu")
starting_hacks = Array[ExtResource("5_ic2r4")]([SubResource("Resource_sb8f5"), SubResource("Resource_tu5w7"), SubResource("Resource_idp5c")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

42
data/pawns/c.tres Normal file
View File

@@ -0,0 +1,42 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://dnty6gi4s2vdl"]
[ext_resource type="AudioStream" uid="uid://dr3jq3tnvtwu" path="res://external/sample audio/c.wav" id="1_ag1od"]
[ext_resource type="PackedScene" uid="uid://c6hojd4o764oc" path="res://templates/pawns/c.tscn" id="2_ag1od"]
[ext_resource type="Texture2D" uid="uid://dm7fo7tt00p1" path="res://external/test portraits/c.png" id="3_1yr5w"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_nmvyh"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_2i1hp"]
[sub_resource type="Resource" id="Resource_onotk"]
script = ExtResource("5_2i1hp")
type = 1
qty = 5
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_7kyxn"]
script = ExtResource("5_2i1hp")
type = 2
qty = 1
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_6f6nq"]
script = ExtResource("5_2i1hp")
type = 3
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("4_nmvyh")
name = "C"
move_speed = 3.0
life = 100
ammo = 6
max_ammo = 6
melee_damage = 12
range_damage = 4
range_time = 0.4
melee_time = 1.25
portrait = ExtResource("3_1yr5w")
name_audio = ExtResource("1_ag1od")
pawn_body = ExtResource("2_ag1od")
starting_hacks = Array[ExtResource("5_2i1hp")]([SubResource("Resource_onotk"), SubResource("Resource_7kyxn"), SubResource("Resource_6f6nq")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

43
data/pawns/d.tres Normal file
View File

@@ -0,0 +1,43 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://bpb2nok3rqm1g"]
[ext_resource type="AudioStream" uid="uid://dsikjobcle18a" path="res://external/sample audio/d.wav" id="1_l2iwo"]
[ext_resource type="PackedScene" uid="uid://bqg51qfb0cj8y" path="res://templates/pawns/d.tscn" id="2_l2iwo"]
[ext_resource type="Texture2D" uid="uid://b2ovogspuupqa" path="res://external/test portraits/d.png" id="3_b6a3y"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_8vcih"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_v5xcc"]
[sub_resource type="Resource" id="Resource_0fl5x"]
script = ExtResource("5_v5xcc")
type = 1
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_vnwdb"]
script = ExtResource("5_v5xcc")
type = 5
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_4mj1t"]
script = ExtResource("5_v5xcc")
type = 3
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("4_8vcih")
name = "D"
move_speed = 3.5
life = 100
ammo = 7
max_ammo = 7
melee_damage = 15
range_damage = 3
range_time = 0.3
melee_time = 1.25
reload_time = 0.6
portrait = ExtResource("3_b6a3y")
name_audio = ExtResource("1_l2iwo")
pawn_body = ExtResource("2_l2iwo")
starting_hacks = Array[ExtResource("5_v5xcc")]([SubResource("Resource_0fl5x"), SubResource("Resource_vnwdb"), SubResource("Resource_4mj1t")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

44
data/pawns/e.tres Normal file
View File

@@ -0,0 +1,44 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://casciqabe0wgo"]
[ext_resource type="AudioStream" uid="uid://dornjmfg37bv0" path="res://external/sample audio/e.wav" id="1_hlw2y"]
[ext_resource type="PackedScene" uid="uid://bb6a6wu2kc3fr" path="res://templates/pawns/e.tscn" id="2_hlw2y"]
[ext_resource type="Texture2D" uid="uid://b2rynijk10l8a" path="res://external/test portraits/e.png" id="3_1j2en"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_jmlxg"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_f1khw"]
[sub_resource type="Resource" id="Resource_o3qj5"]
script = ExtResource("5_f1khw")
type = 4
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_cxp03"]
script = ExtResource("5_f1khw")
type = 5
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_o75pd"]
script = ExtResource("5_f1khw")
type = 3
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("4_jmlxg")
name = "E"
move_speed = 3.0
life = 75
max_life = 75
ammo = 4
max_ammo = 4
melee_damage = 15
range_damage = 10
range_time = 1.0
melee_time = 1.25
reload_time = 2.0
portrait = ExtResource("3_1j2en")
name_audio = ExtResource("1_hlw2y")
pawn_body = ExtResource("2_hlw2y")
starting_hacks = Array[ExtResource("5_f1khw")]([SubResource("Resource_o3qj5"), SubResource("Resource_cxp03"), SubResource("Resource_o75pd")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

40
data/pawns/f.tres Normal file
View File

@@ -0,0 +1,40 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://6s8tqfssrt5i"]
[ext_resource type="AudioStream" uid="uid://bqu2otr8b1oj6" path="res://external/sample audio/f.wav" id="1_2oi4n"]
[ext_resource type="PackedScene" uid="uid://cwrxbjgwbiv81" path="res://templates/pawns/f.tscn" id="2_2oi4n"]
[ext_resource type="Texture2D" uid="uid://c265jqwykqc2s" path="res://external/test portraits/f.png" id="3_ttwdt"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_mlun8"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_2hgkw"]
[sub_resource type="Resource" id="Resource_crpmc"]
script = ExtResource("5_2hgkw")
type = 4
qty = 1
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_nf0ju"]
script = ExtResource("5_2hgkw")
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_2pr8m"]
script = ExtResource("5_2hgkw")
type = 1
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("4_mlun8")
name = "F"
move_speed = 3.0
life = 100
ammo = 5
melee_damage = 10
range_damage = 5
range_time = 0.5
melee_time = 1.0
portrait = ExtResource("3_ttwdt")
name_audio = ExtResource("1_2oi4n")
pawn_body = ExtResource("2_2oi4n")
starting_hacks = Array[ExtResource("5_2hgkw")]([SubResource("Resource_crpmc"), SubResource("Resource_nf0ju"), SubResource("Resource_2pr8m")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,39 +0,0 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=7 format=3 uid="uid://df4gqi1us2dwu"]
[ext_resource type="Texture2D" uid="uid://2qoouiv1cf0i" path="res://visuals/images/temp_portraits/tg-john-bishous.jpg" id="1_sb8f5"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/trapset.gd" id="2_sb8f5"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_tu5w7"]
[sub_resource type="Resource" id="Resource_ocmvf"]
script = ExtResource("2_sb8f5")
type = 4
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_sb8f5"]
script = ExtResource("2_sb8f5")
qty = 6
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_tu5w7"]
script = ExtResource("2_sb8f5")
type = 2
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("2_tu5w7")
name = "John Bishous"
move_speed = 2.5
life = 125
max_life = 125
ammo = 3
max_ammo = 3
melee_damage = 10
range_damage = 20
range_time = 0.75
melee_time = 1.0
reload_time = 1.75
portrait = ExtResource("1_sb8f5")
starting_traps = Array[ExtResource("2_sb8f5")]([SubResource("Resource_ocmvf"), SubResource("Resource_sb8f5"), SubResource("Resource_tu5w7")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,38 +0,0 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=7 format=3 uid="uid://dnty6gi4s2vdl"]
[ext_resource type="Texture2D" uid="uid://db0n6kjwucthf" path="res://visuals/images/temp_portraits/tg-lou-riche.jpg" id="1_onotk"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_7kyxn"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/trapset.gd" id="2_onotk"]
[sub_resource type="Resource" id="Resource_h6eg2"]
script = ExtResource("2_onotk")
type = 1
qty = 5
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_onotk"]
script = ExtResource("2_onotk")
type = 2
qty = 1
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_7kyxn"]
script = ExtResource("2_onotk")
type = 3
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("2_7kyxn")
name = "Lou Riche"
move_speed = 3.0
life = 100
ammo = 6
max_ammo = 6
melee_damage = 12
range_damage = 4
range_time = 0.4
melee_time = 1.25
portrait = ExtResource("1_onotk")
starting_traps = Array[ExtResource("2_onotk")]([SubResource("Resource_h6eg2"), SubResource("Resource_onotk"), SubResource("Resource_7kyxn")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,39 +0,0 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=7 format=3 uid="uid://bpb2nok3rqm1g"]
[ext_resource type="Texture2D" uid="uid://ci86bksme5114" path="res://visuals/images/temp_portraits/tg-tenrou-ugetsu.jpg" id="1_fm4bf"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_0fl5x"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/trapset.gd" id="2_fm4bf"]
[sub_resource type="Resource" id="Resource_g4lbt"]
script = ExtResource("2_fm4bf")
type = 1
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_fm4bf"]
script = ExtResource("2_fm4bf")
type = 5
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_0fl5x"]
script = ExtResource("2_fm4bf")
type = 3
qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("2_0fl5x")
name = "Tenrou Ugetsu"
move_speed = 3.5
life = 100
ammo = 7
max_ammo = 7
melee_damage = 15
range_damage = 3
range_time = 0.3
melee_time = 1.25
reload_time = 0.6
portrait = ExtResource("1_fm4bf")
starting_traps = Array[ExtResource("2_fm4bf")]([SubResource("Resource_g4lbt"), SubResource("Resource_fm4bf"), SubResource("Resource_0fl5x")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,40 +0,0 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=7 format=3 uid="uid://casciqabe0wgo"]
[ext_resource type="Texture2D" uid="uid://bsug1ur2gifkh" path="res://visuals/images/temp_portraits/tg-tico.jpg" id="1_o3qj5"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_cxp03"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/trapset.gd" id="2_o3qj5"]
[sub_resource type="Resource" id="Resource_y3bgy"]
script = ExtResource("2_o3qj5")
type = 4
qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_o3qj5"]
script = ExtResource("2_o3qj5")
type = 5
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_cxp03"]
script = ExtResource("2_o3qj5")
type = 3
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("2_cxp03")
name = "Tico"
move_speed = 3.0
life = 75
max_life = 75
ammo = 4
max_ammo = 4
melee_damage = 15
range_damage = 10
range_time = 1.0
melee_time = 1.25
reload_time = 2.0
portrait = ExtResource("1_o3qj5")
starting_traps = Array[ExtResource("2_o3qj5")]([SubResource("Resource_y3bgy"), SubResource("Resource_o3qj5"), SubResource("Resource_cxp03")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,36 +0,0 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=7 format=3 uid="uid://6s8tqfssrt5i"]
[ext_resource type="Texture2D" uid="uid://bp6wc55s2t4si" path="res://visuals/images/temp_portraits/tg-van-raily.jpg" id="1_crpmc"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/trapset.gd" id="2_crpmc"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_nf0ju"]
[sub_resource type="Resource" id="Resource_nf0ju"]
script = ExtResource("2_crpmc")
type = 4
qty = 1
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_2pr8m"]
script = ExtResource("2_crpmc")
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_1yw33"]
script = ExtResource("2_crpmc")
type = 1
qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource]
script = ExtResource("2_nf0ju")
name = "Van Raily"
move_speed = 3.0
life = 100
ammo = 5
melee_damage = 10
range_damage = 5
range_time = 0.5
melee_time = 1.0
portrait = ExtResource("1_crpmc")
starting_traps = Array[ExtResource("2_crpmc")]([SubResource("Resource_nf0ju"), SubResource("Resource_2pr8m"), SubResource("Resource_1yw33")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,4 +0,0 @@
class_name TrapSet extends Resource
@export var type : Trap.Type
@export var qty : int

27
default_bus_layout.tres Normal file
View File

@@ -0,0 +1,27 @@
[gd_resource type="AudioBusLayout" format=3 uid="uid://ck35ska6sr17h"]
[resource]
bus/1/name = &"Voice"
bus/1/solo = false
bus/1/mute = false
bus/1/bypass_fx = false
bus/1/volume_db = 4.4334908
bus/1/send = &"Master"
bus/2/name = &"Music"
bus/2/solo = false
bus/2/mute = false
bus/2/bypass_fx = false
bus/2/volume_db = -8.793672
bus/2/send = &"Master"
bus/3/name = &"SFX"
bus/3/solo = false
bus/3/mute = false
bus/3/bypass_fx = false
bus/3/volume_db = 0.0
bus/3/send = &"Master"
bus/4/name = &"UI"
bus/4/solo = false
bus/4/mute = false
bus/4/bypass_fx = false
bus/4/volume_db = 0.0
bus/4/send = &"Master"

View File

View File

@@ -0,0 +1,562 @@
[gd_scene format=3 uid="uid://bflg720h1w3d3"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_so17j"]
[ext_resource type="Shader" uid="uid://b6ke6r1fjb8s3" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_core.gdshader" id="2_d2rk6"]
[ext_resource type="Material" uid="uid://dnw08mtonx63d" path="res://experimental/BinbunVFX/impact_explosions/src/material/explosion/explosion_smoke.tres" id="2_plj08"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://experimental/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="3_msnhc"]
[ext_resource type="Shader" uid="uid://bf8eiigjam2fr" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explostion_ring.gdshader" id="5_d2rk6"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://experimental/BinbunVFX/shared/texture/cracks_01.png" id="5_otofc"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://experimental/BinbunVFX/shared/texture/cracks_emission_01.png" id="6_d2rk6"]
[ext_resource type="Shader" uid="uid://ccd4kg68n7uox" path="res://experimental/BinbunVFX/impact_explosions/src/shader/basic_billboard.gdshader" id="8_y01pw"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/BinbunVFX/shared/script/vfx_light.gd" id="9_85p3d"]
[sub_resource type="Gradient" id="Gradient_iyrbe"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_dga0b"]
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"]
noise = SubResource("FastNoiseLite_dga0b")
color_ramp = SubResource("Gradient_iyrbe")
seamless = true
[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"]
noise = SubResource("FastNoiseLite_d2rk6")
seamless = true
[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"]
noise = SubResource("FastNoiseLite_y01pw")
seamless = true
invert = true
seamless_blend_skirt = 1.0
[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" unique_id=1915848858]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
script = ExtResource("1_so17j")
preview = false
one_shot = true
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="." unique_id=1466137156]
layers = 540672
material_override = SubResource("ShaderMaterial_e6ocy")
mesh = SubResource("SphereMesh_awqfb")
[node name="Smoke" type="GPUParticles3D" parent="." unique_id=1546206057]
layers = 540672
material_override = ExtResource("2_plj08")
emitting = false
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="." unique_id=1580014307]
layers = 540672
material_override = SubResource("ShaderMaterial_msnhc")
emitting = false
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="." unique_id=312404838]
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="." unique_id=159984480]
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="." unique_id=202182820]
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="." unique_id=1611743251]
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="." unique_id=1543730117]
callback_mode_method = 1
libraries/ = SubResource("AnimationLibrary_plj08")
autoplay = &"RESET"

View File

@@ -0,0 +1,616 @@
[gd_scene format=3 uid="uid://dato0qpbqvwnj"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_8n8gd"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_cdqbm"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="1_sadvm"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://experimental/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="2_8n8gd"]
[ext_resource type="Shader" uid="uid://bf8eiigjam2fr" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explostion_ring.gdshader" id="3_cdqbm"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://experimental/BinbunVFX/shared/texture/cracks_01.png" id="6_bdwyf"]
[ext_resource type="Shader" uid="uid://ccd4kg68n7uox" path="res://experimental/BinbunVFX/impact_explosions/src/shader/basic_billboard.gdshader" id="6_haqe0"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://experimental/BinbunVFX/shared/texture/cracks_emission_01.png" id="7_haqe0"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/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"]
noise = SubResource("FastNoiseLite_cdqbm")
color_ramp = SubResource("Gradient_8n8gd")
seamless = true
[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"]
noise = SubResource("FastNoiseLite_8n8gd")
seamless = true
normalize = false
[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
noise = SubResource("FastNoiseLite_w7scw")
seamless = true
invert = true
[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"]
noise = SubResource("FastNoiseLite_sadvm")
seamless = true
[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"]
noise = SubResource("FastNoiseLite_rmi04")
seamless = true
invert = true
seamless_blend_skirt = 1.0
[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" unique_id=1672456492]
script = ExtResource("1_cdqbm")
preview = false
one_shot = true
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="." unique_id=1930442028]
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="." unique_id=1470245299]
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="." unique_id=1982554184]
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="." unique_id=1696110943]
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="." unique_id=360698639]
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="." unique_id=182059197]
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="." unique_id=991675899]
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="." unique_id=1815067620]
libraries/ = SubResource("AnimationLibrary_8n8gd")

View File

@@ -0,0 +1,520 @@
[gd_scene 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" unique_id=1493313628]
script = ExtResource("1_enhek")
preview = false
one_shot = true
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="." unique_id=312730182]
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="." unique_id=2068506687]
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="." unique_id=264003257]
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="." unique_id=1215858331]
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="." unique_id=779162809]
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="." unique_id=1297384187]
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="." unique_id=1195111952]
libraries/ = SubResource("AnimationLibrary_1ahis")
autoplay = &"main"

View File

@@ -0,0 +1,420 @@
[gd_scene 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" unique_id=1390196907]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
script = ExtResource("1_gkc2v")
preview = false
one_shot = true
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="." unique_id=2042306723]
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="." unique_id=1343205197]
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="." unique_id=1417955337]
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="." unique_id=177625817]
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="." unique_id=1733467689]
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="." unique_id=1784558047]
libraries/ = SubResource("AnimationLibrary_ppd7v")

View File

@@ -0,0 +1,417 @@
[gd_scene format=3 uid="uid://shl0iw1x775r"]
[ext_resource type="Shader" uid="uid://de7cy2qqnf2p5" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_core_particle.gdshader" id="1_pc1m8"]
[ext_resource type="Script" uid="uid://tb7n6ybv43ch" path="res://experimental/BinbunVFX/shared/script/vfx_controller.gd" id="1_vxewg"]
[ext_resource type="Shader" uid="uid://b1sjgiq8o4tvd" path="res://experimental/BinbunVFX/impact_explosions/src/shader/explosion_smoke.gdshader" id="2_vxewg"]
[ext_resource type="Shader" uid="uid://d28ltkmbbdcjb" path="res://experimental/BinbunVFX/impact_explosions/src/shader/sparks.gdshader" id="3_wbyke"]
[ext_resource type="Texture2D" uid="uid://85fb3gemkbhp" path="res://experimental/BinbunVFX/shared/texture/cracks_01.png" id="4_ro6ym"]
[ext_resource type="Texture2D" uid="uid://bbxo5nkvy537a" path="res://experimental/BinbunVFX/shared/texture/cracks_emission_01.png" id="5_c84e7"]
[ext_resource type="Script" uid="uid://bdk8hhttligw" path="res://experimental/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"]
noise = SubResource("FastNoiseLite_vxewg")
color_ramp = SubResource("Gradient_pc1m8")
seamless = true
[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"]
noise = SubResource("FastNoiseLite_pc1m8")
seamless = true
normalize = false
[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
noise = SubResource("FastNoiseLite_wbyke")
seamless = true
invert = true
[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" unique_id=2086130807]
script = ExtResource("1_vxewg")
preview = false
one_shot = true
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="." unique_id=615851446]
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="." unique_id=103514712]
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="." unique_id=1319420001]
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="." unique_id=1106971543]
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="." unique_id=1083331450]
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="." unique_id=133068635]
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")
}

Some files were not shown because too many files have changed in this diff Show More