From 4ea0205a27db21ac36c2a4dc1dbf7976d65f6666 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Thu, 2 Mar 2023 11:48:39 +0100 Subject: [PATCH] [godot] Fix up v4 examples. --- .../mix-and-match/mix-and-match.png.import | 2 +- .../assets/raptor/light-sprite.png.import | 2 +- .../assets/raptor/n_raptor.png.import | 2 +- .../assets/raptor/raptor.png.import | 2 +- .../assets/spineboy/spineboy-data-res.tres | 16 +- .../assets/spineboy/spineboy.png.import | 2 +- .../examples/01-helloworld/helloworld.tscn | 7 +- .../animation-state-listeners.tscn | 9 +- .../03-mix-and-match/mix-and-match.tscn | 5 +- .../04-simple-input/simple-input.tscn | 7 +- .../05-mouse-following/mouse-following.tscn | 7 +- .../06-bone-following/bone-following.tscn | 10 +- .../examples/07-slot-node/slot-node.tscn | 18 +- .../08-animation-player/animation-player.tscn | 264 +++++++++--------- .../09-custom-material/custom-material.tscn | 14 +- .../examples/10-2d-lighting/2d-lighting.tscn | 12 +- .../examples/11-bone-node/bone-node.gd | 19 +- .../examples/11-bone-node/bone-node.tscn | 22 +- spine-godot/example-v4/icon.png.import | 2 +- 19 files changed, 227 insertions(+), 195 deletions(-) diff --git a/spine-godot/example-v4/assets/mix-and-match/mix-and-match.png.import b/spine-godot/example-v4/assets/mix-and-match/mix-and-match.png.import index 761e2b425..3d913e7f0 100644 --- a/spine-godot/example-v4/assets/mix-and-match/mix-and-match.png.import +++ b/spine-godot/example-v4/assets/mix-and-match/mix-and-match.png.import @@ -16,9 +16,9 @@ dest_files=["res://.godot/imported/mix-and-match.png-c2d8e28d9f2efc380ff8b95a22d [params] compress/mode=0 +compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 -compress/bptc_ldr=0 compress/normal_map=0 compress/channel_pack=0 mipmaps/generate=false diff --git a/spine-godot/example-v4/assets/raptor/light-sprite.png.import b/spine-godot/example-v4/assets/raptor/light-sprite.png.import index 60c836315..7b8550c98 100644 --- a/spine-godot/example-v4/assets/raptor/light-sprite.png.import +++ b/spine-godot/example-v4/assets/raptor/light-sprite.png.import @@ -16,9 +16,9 @@ dest_files=["res://.godot/imported/light-sprite.png-346e910021b52658f1de723e4c80 [params] compress/mode=0 +compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 -compress/bptc_ldr=0 compress/normal_map=0 compress/channel_pack=0 mipmaps/generate=false diff --git a/spine-godot/example-v4/assets/raptor/n_raptor.png.import b/spine-godot/example-v4/assets/raptor/n_raptor.png.import index 1ac7c0eef..8f302b3bb 100644 --- a/spine-godot/example-v4/assets/raptor/n_raptor.png.import +++ b/spine-godot/example-v4/assets/raptor/n_raptor.png.import @@ -16,9 +16,9 @@ dest_files=["res://.godot/imported/n_raptor.png-d9af68b4a56af2b4319bb485e366dc90 [params] compress/mode=0 +compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 -compress/bptc_ldr=0 compress/normal_map=0 compress/channel_pack=0 mipmaps/generate=false diff --git a/spine-godot/example-v4/assets/raptor/raptor.png.import b/spine-godot/example-v4/assets/raptor/raptor.png.import index cd8ee4280..2326b1429 100644 --- a/spine-godot/example-v4/assets/raptor/raptor.png.import +++ b/spine-godot/example-v4/assets/raptor/raptor.png.import @@ -16,9 +16,9 @@ dest_files=["res://.godot/imported/raptor.png-505be50f63fd1d0fb9175a9efbb9776c.c [params] compress/mode=0 +compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 -compress/bptc_ldr=0 compress/normal_map=0 compress/channel_pack=0 mipmaps/generate=false diff --git a/spine-godot/example-v4/assets/spineboy/spineboy-data-res.tres b/spine-godot/example-v4/assets/spineboy/spineboy-data-res.tres index 4a356d2b6..a1acac5ce 100644 --- a/spine-godot/example-v4/assets/spineboy/spineboy-data-res.tres +++ b/spine-godot/example-v4/assets/spineboy/spineboy-data-res.tres @@ -1,20 +1,20 @@ -[gd_resource type="SpineSkeletonDataResource" load_steps=5 format=2] +[gd_resource type="SpineSkeletonDataResource" load_steps=5 format=3 uid="uid://cb6rn6vonqbx0"] -[ext_resource path="res://assets/spineboy/spineboy.atlas" type="SpineAtlasResource" id=1] -[ext_resource path="res://assets/spineboy/spineboy-pro.spine-json" type="SpineSkeletonFileResource" id=2] +[ext_resource type="SpineAtlasResource" uid="uid://dt2kctrit34y0" path="res://assets/spineboy/spineboy.atlas" id="1"] +[ext_resource type="SpineSkeletonFileResource" uid="uid://bngulrxfavqyn" path="res://assets/spineboy/spineboy-pro.spine-json" id="2"] -[sub_resource type="SpineAnimationMix" id=1] +[sub_resource type="SpineAnimationMix" id="1"] from = "idle" to = "run" mix = 0.2 -[sub_resource type="SpineAnimationMix" id=2] +[sub_resource type="SpineAnimationMix" id="2"] from = "run" to = "idle" mix = 0.2 [resource] -atlas_res = ExtResource( 1 ) -skeleton_file_res = ExtResource( 2 ) +atlas_res = ExtResource("1") +skeleton_file_res = ExtResource("2") default_mix = 0.1 -animation_mixes = [ SubResource( 1 ), SubResource( 2 ) ] +animation_mixes = [SubResource("1"), SubResource("2")] diff --git a/spine-godot/example-v4/assets/spineboy/spineboy.png.import b/spine-godot/example-v4/assets/spineboy/spineboy.png.import index b2d68597d..fd8195661 100644 --- a/spine-godot/example-v4/assets/spineboy/spineboy.png.import +++ b/spine-godot/example-v4/assets/spineboy/spineboy.png.import @@ -16,9 +16,9 @@ dest_files=["res://.godot/imported/spineboy.png-436dbd6da2b707b6828ede17b7871f43 [params] compress/mode=0 +compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 -compress/bptc_ldr=0 compress/normal_map=0 compress/channel_pack=0 mipmaps/generate=false diff --git a/spine-godot/example-v4/examples/01-helloworld/helloworld.tscn b/spine-godot/example-v4/examples/01-helloworld/helloworld.tscn index 6c3e6105e..fe049696c 100644 --- a/spine-godot/example-v4/examples/01-helloworld/helloworld.tscn +++ b/spine-godot/example-v4/examples/01-helloworld/helloworld.tscn @@ -1,18 +1,19 @@ [gd_scene load_steps=3 format=3 uid="uid://d0v5rhv2ysej8"] [ext_resource type="Script" path="res://examples/01-helloworld/spineboy-helloworld.gd" id="1"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="3"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="3"] [node name="Node2D" type="Node2D"] [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(505, 466) scale = Vector2(0.466832, 0.466832) -skeleton_data_res = ExtResource( "3" ) +skeleton_data_res = ExtResource("3") bones_color = Color(0.968627, 1, 0, 0.501961) paths_color = Color(1, 0.498039, 0, 0.466667) paths_clipping = Color(0.8, 0, 0, 0.5) +preview_skin = "Default" preview_animation = "run" preview_frame = true preview_time = 0.24 -script = ExtResource( "1" ) +script = ExtResource("1") diff --git a/spine-godot/example-v4/examples/02-animation-state-listeners/animation-state-listeners.tscn b/spine-godot/example-v4/examples/02-animation-state-listeners/animation-state-listeners.tscn index 8f0faa9cf..fd698f759 100644 --- a/spine-godot/example-v4/examples/02-animation-state-listeners/animation-state-listeners.tscn +++ b/spine-godot/example-v4/examples/02-animation-state-listeners/animation-state-listeners.tscn @@ -1,19 +1,20 @@ [gd_scene load_steps=4 format=3 uid="uid://c738i3nbdkn0h"] [ext_resource type="Script" path="res://examples/02-animation-state-listeners/animation-state-listeners.gd" id="1"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] [ext_resource type="AudioStream" uid="uid://can7k84o8svum" path="res://assets/footstep.ogg" id="3"] [node name="Node2D" type="Node2D"] -script = ExtResource( "1" ) +script = ExtResource("1") [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(473, 487) scale = Vector2(0.575051, 0.575051) -skeleton_data_res = ExtResource( "2" ) +skeleton_data_res = ExtResource("2") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 [node name="FootstepAudio" type="AudioStreamPlayer" parent="."] -stream = ExtResource( "3" ) +stream = ExtResource("3") diff --git a/spine-godot/example-v4/examples/03-mix-and-match/mix-and-match.tscn b/spine-godot/example-v4/examples/03-mix-and-match/mix-and-match.tscn index 7f14e428e..ae2338c89 100644 --- a/spine-godot/example-v4/examples/03-mix-and-match/mix-and-match.tscn +++ b/spine-godot/example-v4/examples/03-mix-and-match/mix-and-match.tscn @@ -8,8 +8,9 @@ [node name="MixAndMatch" type="SpineSprite" parent="."] position = Vector2(532.982, 480.287) scale = Vector2(0.441932, 0.441932) -skeleton_data_res = ExtResource( "1" ) +skeleton_data_res = ExtResource("1") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 -script = ExtResource( "2" ) +script = ExtResource("2") diff --git a/spine-godot/example-v4/examples/04-simple-input/simple-input.tscn b/spine-godot/example-v4/examples/04-simple-input/simple-input.tscn index 9028020f7..b818012fe 100644 --- a/spine-godot/example-v4/examples/04-simple-input/simple-input.tscn +++ b/spine-godot/example-v4/examples/04-simple-input/simple-input.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=3 format=3 uid="uid://bgdpghp11j3kg"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] [ext_resource type="Script" path="res://examples/04-simple-input/spineboy-simple-input.gd" id="2"] [node name="Node2D" type="Node2D"] @@ -8,8 +8,9 @@ [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(501.503, 472.035) scale = Vector2(0.518624, 0.518624) -skeleton_data_res = ExtResource( "1" ) +skeleton_data_res = ExtResource("1") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 -script = ExtResource( "2" ) +script = ExtResource("2") diff --git a/spine-godot/example-v4/examples/05-mouse-following/mouse-following.tscn b/spine-godot/example-v4/examples/05-mouse-following/mouse-following.tscn index b28780a3a..777aa67b5 100644 --- a/spine-godot/example-v4/examples/05-mouse-following/mouse-following.tscn +++ b/spine-godot/example-v4/examples/05-mouse-following/mouse-following.tscn @@ -1,15 +1,16 @@ [gd_scene load_steps=3 format=3 uid="uid://borp2l17n5xw1"] [ext_resource type="Script" path="res://examples/05-mouse-following/mouse-following.gd" id="1"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] [node name="Node2D" type="Node2D"] -script = ExtResource( "1" ) +script = ExtResource("1") [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(481, 457) scale = Vector2(0.5, 0.5) -skeleton_data_res = ExtResource( "2" ) +skeleton_data_res = ExtResource("2") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 diff --git a/spine-godot/example-v4/examples/06-bone-following/bone-following.tscn b/spine-godot/example-v4/examples/06-bone-following/bone-following.tscn index 5694deae2..21d9ec140 100644 --- a/spine-godot/example-v4/examples/06-bone-following/bone-following.tscn +++ b/spine-godot/example-v4/examples/06-bone-following/bone-following.tscn @@ -1,16 +1,17 @@ [gd_scene load_steps=4 format=3 uid="uid://bir7yvf0qwdge"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] [ext_resource type="Script" path="res://examples/06-bone-following/bone-following.gd" id="2"] [ext_resource type="Texture2D" uid="uid://8ud5n2ywp5ba" path="res://icon.png" id="3"] [node name="Node2D" type="Node2D"] -script = ExtResource( "2" ) +script = ExtResource("2") [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(478, 483) scale = Vector2(0.58461, 0.58461) -skeleton_data_res = ExtResource( "1" ) +skeleton_data_res = ExtResource("1") +preview_skin = "Default" preview_animation = "" preview_frame = false preview_time = 0.0 @@ -19,7 +20,8 @@ preview_time = 0.0 show_behind_parent = true position = Vector2(214.298, -162.047) rotation = 0.713316 +scale = Vector2(1, 1) bone_name = "gun-tip" [node name="Sprite" type="Sprite2D" parent="Spineboy/GunTipBone"] -texture = ExtResource( "3" ) +texture = ExtResource("3") diff --git a/spine-godot/example-v4/examples/07-slot-node/slot-node.tscn b/spine-godot/example-v4/examples/07-slot-node/slot-node.tscn index 4eac5e614..e22aac825 100644 --- a/spine-godot/example-v4/examples/07-slot-node/slot-node.tscn +++ b/spine-godot/example-v4/examples/07-slot-node/slot-node.tscn @@ -1,17 +1,18 @@ [gd_scene load_steps=5 format=3 uid="uid://bhht8dees2pyq"] [ext_resource type="Script" path="res://examples/07-slot-node/slot-node.gd" id="1"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] [ext_resource type="SpineSkeletonDataResource" path="res://assets/raptor/raptor-data.tres" id="3"] [ext_resource type="Texture2D" uid="uid://8ud5n2ywp5ba" path="res://icon.png" id="4"] [node name="Node2D" type="Node2D"] -script = ExtResource( "1" ) +script = ExtResource("1") [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(474, 506) scale = Vector2(0.560712, 0.560712) -skeleton_data_res = ExtResource( "2" ) +skeleton_data_res = ExtResource("2") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 @@ -20,12 +21,14 @@ preview_time = 0.0 show_behind_parent = true position = Vector2(40.8753, -276.036) rotation = 0.837234 +scale = Vector2(1, 1) slot_name = "gun" [node name="Raptor" type="SpineSprite" parent="Spineboy/GunSlot"] position = Vector2(84.6909, -67.9174) scale = Vector2(0.193472, 0.193472) -skeleton_data_res = ExtResource( "3" ) +skeleton_data_res = ExtResource("3") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 @@ -34,23 +37,26 @@ preview_time = 0.0 show_behind_parent = true position = Vector2(-23.4598, -402.301) rotation = -1.71793 +scale = Vector2(1, 1) slot_name = "eye" [node name="Sprite" type="Sprite2D" parent="Spineboy/EyeSlot"] position = Vector2(84.4734, 43.4469) rotation = 1.66344 -texture = ExtResource( "4" ) +texture = ExtResource("4") [node name="FrontFistSlot" type="SpineSlotNode" parent="Spineboy"] show_behind_parent = true position = Vector2(-29.0298, -241.577) rotation = 0.995187 +scale = Vector2(1, 1) slot_name = "front-fist" [node name="TinySpineboy" type="SpineSprite" parent="Spineboy/FrontFistSlot"] position = Vector2(-2.64624, -10.8111) scale = Vector2(0.193389, 0.193389) -skeleton_data_res = ExtResource( "2" ) +skeleton_data_res = ExtResource("2") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 diff --git a/spine-godot/example-v4/examples/08-animation-player/animation-player.tscn b/spine-godot/example-v4/examples/08-animation-player/animation-player.tscn index d0cf5249e..548ffc503 100644 --- a/spine-godot/example-v4/examples/08-animation-player/animation-player.tscn +++ b/spine-godot/example-v4/examples/08-animation-player/animation-player.tscn @@ -1,10 +1,10 @@ [gd_scene load_steps=68 format=3 uid="uid://dmddd1ll1y0bm"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] [ext_resource type="Script" path="res://examples/08-animation-player/animation-player.gd" id="2"] [ext_resource type="SpineSkeletonDataResource" path="res://assets/raptor/raptor-data.tres" id="3"] -[sub_resource type="Animation" id="Animation_t6m4d"] +[sub_resource type="Animation" id="Animation_u8r30"] resource_name = "aim_looped" length = 0.5 tracks/0/type = "value" @@ -32,7 +32,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_njcku"] +[sub_resource type="Animation" id="Animation_pcd73"] resource_name = "aim" length = 0.5 tracks/0/type = "value" @@ -60,7 +60,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_uj85l"] +[sub_resource type="Animation" id="Animation_anfvj"] resource_name = "death_looped" length = 4.9333 tracks/0/type = "value" @@ -88,7 +88,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_irg42"] +[sub_resource type="Animation" id="Animation_se2p7"] resource_name = "death" length = 4.9333 tracks/0/type = "value" @@ -116,7 +116,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_u0h4m"] +[sub_resource type="Animation" id="Animation_g26yh"] resource_name = "hoverboard_looped" tracks/0/type = "value" tracks/0/imported = false @@ -143,7 +143,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_ksgd8"] +[sub_resource type="Animation" id="Animation_dx8qa"] resource_name = "hoverboard" tracks/0/type = "value" tracks/0/imported = false @@ -170,7 +170,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_onrph"] +[sub_resource type="Animation" id="Animation_vy3tq"] resource_name = "idle_looped" length = 1.6667 tracks/0/type = "value" @@ -198,7 +198,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_uq46m"] +[sub_resource type="Animation" id="Animation_urltx"] resource_name = "idle" length = 1.6667 tracks/0/type = "value" @@ -226,7 +226,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_vm3do"] +[sub_resource type="Animation" id="Animation_7xfju"] resource_name = "idle-turn_looped" length = 0.2667 tracks/0/type = "value" @@ -254,7 +254,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_tlrtt"] +[sub_resource type="Animation" id="Animation_bdf5o"] resource_name = "idle-turn" length = 0.2667 tracks/0/type = "value" @@ -282,7 +282,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_8gf4p"] +[sub_resource type="Animation" id="Animation_2orbb"] resource_name = "jump_looped" length = 1.3333 tracks/0/type = "value" @@ -310,7 +310,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_e3mt7"] +[sub_resource type="Animation" id="Animation_3iuuy"] resource_name = "jump" length = 1.3333 tracks/0/type = "value" @@ -338,7 +338,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_q7d0d"] +[sub_resource type="Animation" id="Animation_imcsw"] resource_name = "portal_looped" length = 3.1667 tracks/0/type = "value" @@ -366,7 +366,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_hu1qx"] +[sub_resource type="Animation" id="Animation_k3ycw"] resource_name = "portal" length = 3.1667 tracks/0/type = "value" @@ -394,7 +394,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_4qvwn"] +[sub_resource type="Animation" id="Animation_uxgvr"] resource_name = "run_looped" length = 0.6667 tracks/0/type = "value" @@ -422,7 +422,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_rcbj7"] +[sub_resource type="Animation" id="Animation_4rtac"] resource_name = "run" length = 0.6667 tracks/0/type = "value" @@ -450,7 +450,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_xaopv"] +[sub_resource type="Animation" id="Animation_jonld"] resource_name = "run-to-idle_looped" length = 0.2667 tracks/0/type = "value" @@ -478,7 +478,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_hhaj8"] +[sub_resource type="Animation" id="Animation_pc8cu"] resource_name = "run-to-idle" length = 0.2667 tracks/0/type = "value" @@ -506,7 +506,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_2epiy"] +[sub_resource type="Animation" id="Animation_je08p"] resource_name = "shoot_looped" length = 0.6333 tracks/0/type = "value" @@ -534,7 +534,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_xvf75"] +[sub_resource type="Animation" id="Animation_o7hy8"] resource_name = "shoot" length = 0.6333 tracks/0/type = "value" @@ -562,7 +562,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_ailgk"] +[sub_resource type="Animation" id="Animation_rfed2"] resource_name = "walk_looped" tracks/0/type = "value" tracks/0/imported = false @@ -589,7 +589,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_1ifml"] +[sub_resource type="Animation" id="Animation_6jfr5"] resource_name = "walk" tracks/0/type = "value" tracks/0/imported = false @@ -616,7 +616,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_13jvi"] +[sub_resource type="Animation" id="Animation_871iw"] resource_name = "RESET" length = 0.5 tracks/0/type = "value" @@ -644,35 +644,35 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="AnimationLibrary" id="AnimationLibrary_3juul"] +[sub_resource type="AnimationLibrary" id="AnimationLibrary_v5cr7"] _data = { -"-- Empty --": SubResource( "Animation_13jvi" ), -"RESET": SubResource( "Animation_13jvi" ), -"aim": SubResource( "Animation_njcku" ), -"aim_looped": SubResource( "Animation_t6m4d" ), -"death": SubResource( "Animation_irg42" ), -"death_looped": SubResource( "Animation_uj85l" ), -"hoverboard": SubResource( "Animation_ksgd8" ), -"hoverboard_looped": SubResource( "Animation_u0h4m" ), -"idle": SubResource( "Animation_uq46m" ), -"idle-turn": SubResource( "Animation_tlrtt" ), -"idle-turn_looped": SubResource( "Animation_vm3do" ), -"idle_looped": SubResource( "Animation_onrph" ), -"jump": SubResource( "Animation_e3mt7" ), -"jump_looped": SubResource( "Animation_8gf4p" ), -"portal": SubResource( "Animation_hu1qx" ), -"portal_looped": SubResource( "Animation_q7d0d" ), -"run": SubResource( "Animation_rcbj7" ), -"run-to-idle": SubResource( "Animation_hhaj8" ), -"run-to-idle_looped": SubResource( "Animation_xaopv" ), -"run_looped": SubResource( "Animation_4qvwn" ), -"shoot": SubResource( "Animation_xvf75" ), -"shoot_looped": SubResource( "Animation_2epiy" ), -"walk": SubResource( "Animation_1ifml" ), -"walk_looped": SubResource( "Animation_ailgk" ) +"-- Empty --": SubResource("Animation_871iw"), +"RESET": SubResource("Animation_871iw"), +"aim": SubResource("Animation_pcd73"), +"aim_looped": SubResource("Animation_u8r30"), +"death": SubResource("Animation_se2p7"), +"death_looped": SubResource("Animation_anfvj"), +"hoverboard": SubResource("Animation_dx8qa"), +"hoverboard_looped": SubResource("Animation_g26yh"), +"idle": SubResource("Animation_urltx"), +"idle-turn": SubResource("Animation_bdf5o"), +"idle-turn_looped": SubResource("Animation_7xfju"), +"idle_looped": SubResource("Animation_vy3tq"), +"jump": SubResource("Animation_3iuuy"), +"jump_looped": SubResource("Animation_2orbb"), +"portal": SubResource("Animation_k3ycw"), +"portal_looped": SubResource("Animation_imcsw"), +"run": SubResource("Animation_4rtac"), +"run-to-idle": SubResource("Animation_pc8cu"), +"run-to-idle_looped": SubResource("Animation_jonld"), +"run_looped": SubResource("Animation_uxgvr"), +"shoot": SubResource("Animation_o7hy8"), +"shoot_looped": SubResource("Animation_je08p"), +"walk": SubResource("Animation_6jfr5"), +"walk_looped": SubResource("Animation_rfed2") } -[sub_resource type="Animation" id="Animation_43jug"] +[sub_resource type="Animation" id="Animation_bqfyv"] resource_name = "aim_looped" length = 0.5 tracks/0/type = "value" @@ -700,7 +700,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_npdlv"] +[sub_resource type="Animation" id="Animation_wa8y8"] resource_name = "aim" length = 0.5 tracks/0/type = "value" @@ -728,7 +728,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_v5dry"] +[sub_resource type="Animation" id="Animation_lqflw"] resource_name = "death_looped" length = 4.9333 tracks/0/type = "value" @@ -756,7 +756,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_wthcu"] +[sub_resource type="Animation" id="Animation_mybt4"] resource_name = "death" length = 4.9333 tracks/0/type = "value" @@ -784,7 +784,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_0t4px"] +[sub_resource type="Animation" id="Animation_lgcur"] resource_name = "hoverboard_looped" tracks/0/type = "value" tracks/0/imported = false @@ -811,7 +811,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_cflga"] +[sub_resource type="Animation" id="Animation_qg507"] resource_name = "hoverboard" tracks/0/type = "value" tracks/0/imported = false @@ -838,7 +838,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_4l5af"] +[sub_resource type="Animation" id="Animation_gro4g"] resource_name = "idle_looped" length = 1.6667 tracks/0/type = "value" @@ -866,7 +866,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_3kd2q"] +[sub_resource type="Animation" id="Animation_r4l52"] resource_name = "idle" length = 1.6667 tracks/0/type = "value" @@ -894,7 +894,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_pcovu"] +[sub_resource type="Animation" id="Animation_dxou3"] resource_name = "idle-turn_looped" length = 0.2667 tracks/0/type = "value" @@ -922,7 +922,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_ji8c3"] +[sub_resource type="Animation" id="Animation_mtm0j"] resource_name = "idle-turn" length = 0.2667 tracks/0/type = "value" @@ -950,7 +950,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_hxqi7"] +[sub_resource type="Animation" id="Animation_57vbo"] resource_name = "jump_looped" length = 1.3333 tracks/0/type = "value" @@ -978,7 +978,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_h822y"] +[sub_resource type="Animation" id="Animation_jaxeo"] resource_name = "jump" length = 1.3333 tracks/0/type = "value" @@ -1006,7 +1006,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_8f1h5"] +[sub_resource type="Animation" id="Animation_p8eks"] resource_name = "portal_looped" length = 3.1667 tracks/0/type = "value" @@ -1034,7 +1034,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_i0wgj"] +[sub_resource type="Animation" id="Animation_gn2h2"] resource_name = "portal" length = 3.1667 tracks/0/type = "value" @@ -1062,7 +1062,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_0q41s"] +[sub_resource type="Animation" id="Animation_qyc51"] resource_name = "run_looped" length = 0.6667 tracks/0/type = "value" @@ -1090,7 +1090,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_og3lw"] +[sub_resource type="Animation" id="Animation_wimlj"] resource_name = "run" length = 0.6667 tracks/0/type = "value" @@ -1118,7 +1118,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_q7ndl"] +[sub_resource type="Animation" id="Animation_xpssf"] resource_name = "run-to-idle_looped" length = 0.2667 tracks/0/type = "value" @@ -1146,7 +1146,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_nxlcc"] +[sub_resource type="Animation" id="Animation_cv1an"] resource_name = "run-to-idle" length = 0.2667 tracks/0/type = "value" @@ -1174,7 +1174,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_riqly"] +[sub_resource type="Animation" id="Animation_y0ah7"] resource_name = "shoot_looped" length = 0.6333 tracks/0/type = "value" @@ -1202,7 +1202,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_e7tup"] +[sub_resource type="Animation" id="Animation_6lofo"] resource_name = "shoot" length = 0.6333 tracks/0/type = "value" @@ -1230,7 +1230,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_5q6ru"] +[sub_resource type="Animation" id="Animation_gpmbs"] resource_name = "walk_looped" tracks/0/type = "value" tracks/0/imported = false @@ -1257,7 +1257,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_rbpim"] +[sub_resource type="Animation" id="Animation_8kta1"] resource_name = "walk" tracks/0/type = "value" tracks/0/imported = false @@ -1284,7 +1284,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_n4owa"] +[sub_resource type="Animation" id="Animation_arooe"] resource_name = "RESET" length = 0.5 tracks/0/type = "value" @@ -1312,35 +1312,35 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="AnimationLibrary" id="AnimationLibrary_weodw"] +[sub_resource type="AnimationLibrary" id="AnimationLibrary_fa8i5"] _data = { -"-- Empty --": SubResource( "Animation_n4owa" ), -"RESET": SubResource( "Animation_n4owa" ), -"aim": SubResource( "Animation_npdlv" ), -"aim_looped": SubResource( "Animation_43jug" ), -"death": SubResource( "Animation_wthcu" ), -"death_looped": SubResource( "Animation_v5dry" ), -"hoverboard": SubResource( "Animation_cflga" ), -"hoverboard_looped": SubResource( "Animation_0t4px" ), -"idle": SubResource( "Animation_3kd2q" ), -"idle-turn": SubResource( "Animation_ji8c3" ), -"idle-turn_looped": SubResource( "Animation_pcovu" ), -"idle_looped": SubResource( "Animation_4l5af" ), -"jump": SubResource( "Animation_h822y" ), -"jump_looped": SubResource( "Animation_hxqi7" ), -"portal": SubResource( "Animation_i0wgj" ), -"portal_looped": SubResource( "Animation_8f1h5" ), -"run": SubResource( "Animation_og3lw" ), -"run-to-idle": SubResource( "Animation_nxlcc" ), -"run-to-idle_looped": SubResource( "Animation_q7ndl" ), -"run_looped": SubResource( "Animation_0q41s" ), -"shoot": SubResource( "Animation_e7tup" ), -"shoot_looped": SubResource( "Animation_riqly" ), -"walk": SubResource( "Animation_rbpim" ), -"walk_looped": SubResource( "Animation_5q6ru" ) +"-- Empty --": SubResource("Animation_arooe"), +"RESET": SubResource("Animation_arooe"), +"aim": SubResource("Animation_wa8y8"), +"aim_looped": SubResource("Animation_bqfyv"), +"death": SubResource("Animation_mybt4"), +"death_looped": SubResource("Animation_lqflw"), +"hoverboard": SubResource("Animation_qg507"), +"hoverboard_looped": SubResource("Animation_lgcur"), +"idle": SubResource("Animation_r4l52"), +"idle-turn": SubResource("Animation_mtm0j"), +"idle-turn_looped": SubResource("Animation_dxou3"), +"idle_looped": SubResource("Animation_gro4g"), +"jump": SubResource("Animation_jaxeo"), +"jump_looped": SubResource("Animation_57vbo"), +"portal": SubResource("Animation_gn2h2"), +"portal_looped": SubResource("Animation_p8eks"), +"run": SubResource("Animation_wimlj"), +"run-to-idle": SubResource("Animation_cv1an"), +"run-to-idle_looped": SubResource("Animation_xpssf"), +"run_looped": SubResource("Animation_qyc51"), +"shoot": SubResource("Animation_6lofo"), +"shoot_looped": SubResource("Animation_y0ah7"), +"walk": SubResource("Animation_8kta1"), +"walk_looped": SubResource("Animation_gpmbs") } -[sub_resource type="Animation" id="Animation_g0fba"] +[sub_resource type="Animation" id="Animation_hsvha"] resource_name = "gun-grab_looped" length = 0.666667 tracks/0/type = "value" @@ -1368,7 +1368,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_tnmwm"] +[sub_resource type="Animation" id="Animation_5dt73"] resource_name = "gun-grab" length = 0.666667 tracks/0/type = "value" @@ -1396,7 +1396,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_scefx"] +[sub_resource type="Animation" id="Animation_hsxuq"] resource_name = "gun-holster_looped" length = 0.666667 tracks/0/type = "value" @@ -1424,7 +1424,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_6lq4v"] +[sub_resource type="Animation" id="Animation_5hjd5"] resource_name = "gun-holster" length = 0.666667 tracks/0/type = "value" @@ -1452,7 +1452,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_b7ns0"] +[sub_resource type="Animation" id="Animation_304i6"] resource_name = "jump_looped" length = 1.53333 tracks/0/type = "value" @@ -1480,7 +1480,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_l4kgf"] +[sub_resource type="Animation" id="Animation_rn17q"] resource_name = "jump" length = 1.53333 tracks/0/type = "value" @@ -1508,7 +1508,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_jt8r5"] +[sub_resource type="Animation" id="Animation_qxmqu"] resource_name = "roar_looped" length = 2.13333 tracks/0/type = "value" @@ -1536,7 +1536,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_wlr0r"] +[sub_resource type="Animation" id="Animation_awgy1"] resource_name = "roar" length = 2.13333 tracks/0/type = "value" @@ -1564,7 +1564,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_0e04p"] +[sub_resource type="Animation" id="Animation_d43gs"] resource_name = "walk_looped" length = 1.26667 tracks/0/type = "value" @@ -1592,7 +1592,7 @@ tracks/1/keys = { "values": [true] } -[sub_resource type="Animation" id="Animation_ysb1x"] +[sub_resource type="Animation" id="Animation_g6qku"] resource_name = "walk" length = 1.26667 tracks/0/type = "value" @@ -1620,7 +1620,7 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="Animation" id="Animation_j5g3u"] +[sub_resource type="Animation" id="Animation_73tbf"] resource_name = "RESET" length = 0.5 tracks/0/type = "value" @@ -1648,20 +1648,20 @@ tracks/1/keys = { "values": [false] } -[sub_resource type="AnimationLibrary" id="AnimationLibrary_nir4m"] +[sub_resource type="AnimationLibrary" id="AnimationLibrary_to4p6"] _data = { -"-- Empty --": SubResource( "Animation_j5g3u" ), -"RESET": SubResource( "Animation_j5g3u" ), -"gun-grab": SubResource( "Animation_tnmwm" ), -"gun-grab_looped": SubResource( "Animation_g0fba" ), -"gun-holster": SubResource( "Animation_6lq4v" ), -"gun-holster_looped": SubResource( "Animation_scefx" ), -"jump": SubResource( "Animation_l4kgf" ), -"jump_looped": SubResource( "Animation_b7ns0" ), -"roar": SubResource( "Animation_wlr0r" ), -"roar_looped": SubResource( "Animation_jt8r5" ), -"walk": SubResource( "Animation_ysb1x" ), -"walk_looped": SubResource( "Animation_0e04p" ) +"-- Empty --": SubResource("Animation_73tbf"), +"RESET": SubResource("Animation_73tbf"), +"gun-grab": SubResource("Animation_5dt73"), +"gun-grab_looped": SubResource("Animation_hsvha"), +"gun-holster": SubResource("Animation_5hjd5"), +"gun-holster_looped": SubResource("Animation_hsxuq"), +"jump": SubResource("Animation_rn17q"), +"jump_looped": SubResource("Animation_304i6"), +"roar": SubResource("Animation_awgy1"), +"roar_looped": SubResource("Animation_qxmqu"), +"walk": SubResource("Animation_g6qku"), +"walk_looped": SubResource("Animation_d43gs") } [sub_resource type="Animation" id="25"] @@ -1885,18 +1885,19 @@ tracks/3/keys = { [sub_resource type="AnimationLibrary" id="AnimationLibrary_3lgey"] _data = { -"RESET": SubResource( "25" ), -"cutscene": SubResource( "1" ), -"slow-moonwalk": SubResource( "83" ) +"RESET": SubResource("25"), +"cutscene": SubResource("1"), +"slow-moonwalk": SubResource("83") } [node name="Node2D2" type="Node2D"] -script = ExtResource( "2" ) +script = ExtResource("2") [node name="Spineboy" type="SpineSprite" parent="."] position = Vector2(72.0001, 520) scale = Vector2(0.323942, 0.323942) -skeleton_data_res = ExtResource( "1" ) +skeleton_data_res = ExtResource("1") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 @@ -1907,7 +1908,7 @@ debug = true [node name="Spineboy Track 0" type="AnimationPlayer" parent="Spineboy/SpineAnimationTrack"] libraries = { -"": SubResource( "AnimationLibrary_3juul" ) +"": SubResource("AnimationLibrary_v5cr7") } [node name="SpineAnimationTrack2" type="SpineAnimationTrack" parent="Spineboy"] @@ -1917,13 +1918,14 @@ debug = true [node name="Spineboy Track 1" type="AnimationPlayer" parent="Spineboy/SpineAnimationTrack2"] libraries = { -"": SubResource( "AnimationLibrary_weodw" ) +"": SubResource("AnimationLibrary_fa8i5") } [node name="Raptor" type="SpineSprite" parent="."] position = Vector2(1284, 520) scale = Vector2(-0.328761, 0.328761) -skeleton_data_res = ExtResource( "3" ) +skeleton_data_res = ExtResource("3") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 @@ -1933,10 +1935,10 @@ track_index = 0 [node name="Raptor Track 0" type="AnimationPlayer" parent="Raptor/SpineAnimationTrack"] libraries = { -"": SubResource( "AnimationLibrary_nir4m" ) +"": SubResource("AnimationLibrary_to4p6") } [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { -"": SubResource( "AnimationLibrary_3lgey" ) +"": SubResource("AnimationLibrary_3lgey") } diff --git a/spine-godot/example-v4/examples/09-custom-material/custom-material.tscn b/spine-godot/example-v4/examples/09-custom-material/custom-material.tscn index 5ef3dc06d..4ca51ec15 100644 --- a/spine-godot/example-v4/examples/09-custom-material/custom-material.tscn +++ b/spine-godot/example-v4/examples/09-custom-material/custom-material.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=6 format=3 uid="uid://b4p2vn7bwm52a"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="1"] [sub_resource type="Shader" id="1"] code = "shader_type canvas_item; @@ -11,7 +11,7 @@ void fragment() { }" [sub_resource type="ShaderMaterial" id="2"] -shader = SubResource( "1" ) +shader = SubResource("1") [sub_resource type="Shader" id="3"] code = "shader_type canvas_item; @@ -22,15 +22,16 @@ void fragment() { }" [sub_resource type="ShaderMaterial" id="4"] -shader = SubResource( "3" ) +shader = SubResource("3") [node name="Node2D" type="Node2D"] [node name="SpineSprite" type="SpineSprite" parent="."] position = Vector2(501, 507) scale = Vector2(0.546374, 0.546373) -skeleton_data_res = ExtResource( "1" ) -normal_material = SubResource( "2" ) +skeleton_data_res = ExtResource("1") +normal_material = SubResource("2") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 @@ -39,5 +40,6 @@ preview_time = 0.0 show_behind_parent = true position = Vector2(40.8753, -276.036) rotation = 0.837234 +scale = Vector2(1, 1) slot_name = "gun" -normal_material = SubResource( "4" ) +normal_material = SubResource("4") diff --git a/spine-godot/example-v4/examples/10-2d-lighting/2d-lighting.tscn b/spine-godot/example-v4/examples/10-2d-lighting/2d-lighting.tscn index 296b04007..16e7225a2 100644 --- a/spine-godot/example-v4/examples/10-2d-lighting/2d-lighting.tscn +++ b/spine-godot/example-v4/examples/10-2d-lighting/2d-lighting.tscn @@ -5,21 +5,23 @@ [ext_resource type="Script" path="res://examples/10-2d-lighting/2d-lighting.gd" id="3"] [node name="Node2D" type="Node2D"] -script = ExtResource( "3" ) +script = ExtResource("3") [node name="SpineSprite" type="SpineSprite" parent="."] position = Vector2(576, 506) scale = Vector2(0.458967, 0.458967) -skeleton_data_res = ExtResource( "1" ) +skeleton_data_res = ExtResource("1") +preview_skin = "Default" preview_animation = "-- Empty --" preview_frame = false preview_time = 0.0 [node name="Light2D" type="PointLight2D" parent="."] -position = Vector2(822, 270) +position = Vector2(691, 283) scale = Vector2(1.51563, 1.51563) color = Color(1, 0.0117647, 0.0117647, 1) -texture = ExtResource( "2" ) +texture = ExtResource("2") +height = 100.0 [node name="CanvasModulate" type="CanvasModulate" parent="."] -color = Color(0.145098, 0.0980392, 0.0980392, 1) +color = Color(0.223529, 0.160784, 0.160784, 1) diff --git a/spine-godot/example-v4/examples/11-bone-node/bone-node.gd b/spine-godot/example-v4/examples/11-bone-node/bone-node.gd index a5d721a3a..6d1e06173 100644 --- a/spine-godot/example-v4/examples/11-bone-node/bone-node.gd +++ b/spine-godot/example-v4/examples/11-bone-node/bone-node.gd @@ -2,18 +2,25 @@ extends Node2D @onready var spineboy = $SpineSprite @onready var center_bone = $SpineSprite/HoverboardCenterBone -@onready var center_ray = $SpineSprite/HoverboardCenterBone/RayCast2D +@onready var center_ray = $SpineSprite/HoverboardCenterBone/CenterRay @onready var target_bone = $SpineSprite/HoverboardTargetBone -@onready var target_ray = $SpineSprite/HoverboardTargetBone/RayCast2D +@onready var target_ray = $SpineSprite/HoverboardTargetBone/TargetRay +@onready var hip_bone = $SpineSprite/HipBone +var center_hip_distance = 0 func _ready(): spineboy.get_animation_state().set_animation("hoverboard", true, 0) + spineboy.update_skeleton(0); + center_hip_distance = hip_bone.global_position.y - center_bone.global_position.y func _physics_process(delta): if target_ray.is_colliding(): - target_bone.global_position.y = target_ray.get_collision_point().y - 50 - if center_ray.is_colliding(): - center_bone.global_position.y = center_ray.get_collision_point().y - 50 + target_bone.global_position.y = target_ray.get_collision_point().y - 30 + if center_ray.is_colliding(): + center_bone.global_position.y = center_ray.get_collision_point().y - 30 + + if abs(hip_bone.global_position.y - center_bone.global_position.y) - abs(center_hip_distance) < 20: + hip_bone.global_position.y = center_bone.global_position.y + center_hip_distance + spineboy.global_position.x += delta * 150; - spineboy.global_position.y = center_bone.global_position.y diff --git a/spine-godot/example-v4/examples/11-bone-node/bone-node.tscn b/spine-godot/example-v4/examples/11-bone-node/bone-node.tscn index 8a7a337d1..695f73b0b 100644 --- a/spine-godot/example-v4/examples/11-bone-node/bone-node.tscn +++ b/spine-godot/example-v4/examples/11-bone-node/bone-node.tscn @@ -1,39 +1,45 @@ [gd_scene load_steps=3 format=3 uid="uid://chrw4i0nksphn"] [ext_resource type="Script" path="res://examples/11-bone-node/bone-node.gd" id="1"] -[ext_resource type="SpineSkeletonDataResource" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] +[ext_resource type="SpineSkeletonDataResource" uid="uid://cb6rn6vonqbx0" path="res://assets/spineboy/spineboy-data-res.tres" id="2"] [node name="Node2D" type="Node2D"] -script = ExtResource( "1" ) +script = ExtResource("1") [node name="SpineSprite" type="SpineSprite" parent="."] -position = Vector2(8, 553) +position = Vector2(13, 569) scale = Vector2(0.278096, 0.278096) -skeleton_data_res = ExtResource( "2" ) +skeleton_data_res = ExtResource("2") update_mode = 1 +preview_skin = "Default" preview_animation = "hoverboard" preview_frame = true preview_time = 0.0 [node name="HoverboardCenterBone" type="SpineBoneNode" parent="SpineSprite"] show_behind_parent = true +position = Vector2(-10.1996, -68.2213) +rotation = -0.00403465 bone_name = "hoverboard-controller" bone_mode = 1 -[node name="RayCast2D" type="RayCast2D" parent="SpineSprite/HoverboardCenterBone"] +[node name="CenterRay" type="RayCast2D" parent="SpineSprite/HoverboardCenterBone"] +target_position = Vector2(0, 10000) [node name="HoverboardTargetBone" type="SpineBoneNode" parent="SpineSprite"] show_behind_parent = true -position = Vector2(262.499, 0) +position = Vector2(258.903, -71.9176) rotation = -0.000872665 bone_name = "board-ik" bone_mode = 1 -[node name="RayCast2D" type="RayCast2D" parent="SpineSprite/HoverboardTargetBone"] +[node name="TargetRay" type="RayCast2D" parent="SpineSprite/HoverboardTargetBone"] +position = Vector2(-3.59872, 3.59277) +target_position = Vector2(0, 10000) [node name="HipBone" type="SpineBoneNode" parent="SpineSprite"] show_behind_parent = true -position = Vector2(0, -169.006) +position = Vector2(-53.7338, -279.363) rotation = -0.000872665 bone_name = "hip" bone_mode = 1 diff --git a/spine-godot/example-v4/icon.png.import b/spine-godot/example-v4/icon.png.import index 7bdb198b7..aab28cada 100644 --- a/spine-godot/example-v4/icon.png.import +++ b/spine-godot/example-v4/icon.png.import @@ -16,9 +16,9 @@ dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.cte [params] compress/mode=0 +compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 -compress/bptc_ldr=0 compress/normal_map=0 compress/channel_pack=0 mipmaps/generate=false