Files
project-rr/characters/player/player1_portrait_stand_native.tscn
T
Leonid PershinandClaude Opus 4.8 04cf5f90b0 ProjectRR — нативный прототип на ассетах ProjectR
- Все 189 скелетов Spine сконвертированы в нативные Godot Skeleton2D (.tscn), без Spine в рантайме
- Меню + сцены: подземелье (карта комнат), просмотр спрайтов, нативные анимации
- Кастомизация цвета (кожа/волосы/глаза) через шейдер
- Вытащенные текстуры/UI/шрифты + нарезка спрайтов из атласа
- Датасет комнат для LoRA, офлайн-инструменты конвертации в tools/

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-03 16:29:21 +03:00

119 lines
5.2 KiB
Plaintext

[gd_scene format=3]
[ext_resource type="Texture2D" path="res://characters/player/spine/player1_portrait_stand.png" id="1_r010d"]
[sub_resource type="Animation" id="Animation_m82v8"]
length = 0.001
loop_mode = 1
[sub_resource type="AnimationLibrary" id="AnimationLibrary_167bm"]
_data = {
&"animation": SubResource("Animation_m82v8")
}
[node name="Native" type="Node2D" unique_id=445409262]
[node name="SpineRoot" type="Node2D" parent="." unique_id=170175946]
position = Vector2(640, 356.1081)
scale = Vector2(3.891892, -3.891892)
[node name="Skeleton2D" type="Skeleton2D" parent="SpineRoot" unique_id=185027567]
[node name="root" type="Bone2D" parent="SpineRoot/Skeleton2D" unique_id=746131425]
rest = Transform2D(1, 0, 0, 1, 0, 0)
auto_calculate_length_and_angle = false
length = 0.0
bone_angle = 0.0
[node name="P_hairD_#02" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=444566424]
modulate = Color(0.45490196, 0.31764707, 0.3647059, 1)
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(56, -34, -40, -34, -40.000004, 73, 55.999996, 73)
uv = PackedVector2Array(98, 221, 2.0000002, 221, 2.0000002, 114.00001, 98, 114.00001)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_armB3_#00" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=486690053]
modulate = Color(0.9843137, 0.8666667, 0.80784315, 1)
z_index = 1
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(17.000004, -75, -57.999996, -75, -58, -7, 17, -7)
uv = PackedVector2Array(176, 141, 101, 141, 101, 73, 176, 73)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_bodyA_#00" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=716545388]
modulate = Color(0.9843137, 0.8666667, 0.80784315, 1)
z_index = 2
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(48.000004, -75, -48.999996, -75, -49, 6, 48, 6)
uv = PackedVector2Array(99, 112, 2.0000002, 112, 2.0000002, 30.999998, 99, 30.999998)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_armA2_#00" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=1297267266]
modulate = Color(0.9843137, 0.8666667, 0.80784315, 1)
z_index = 3
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(58.000004, -75, 26.000004, -75, 26.000002, -29, 58, -29)
uv = PackedVector2Array(210, 153, 178, 153, 178, 107, 210, 107)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_headA_#00" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=610299834]
modulate = Color(0.9843137, 0.8666667, 0.80784315, 1)
z_index = 4
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(37, -25, -37, -25, -37.000004, 46, 36.999996, 46)
uv = PackedVector2Array(174, 221, 100, 221, 100, 150, 174, 150)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_hairC_#02" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=718314161]
modulate = Color(0.45490196, 0.31764707, 0.3647059, 1)
z_index = 5
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(-28, -8, -53, -8, -53.000004, 58, -28.000002, 58)
uv = PackedVector2Array(201, 221, 176, 221, 176, 155, 201, 155)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_hairB_#02" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=775037882]
modulate = Color(0.45490196, 0.31764707, 0.3647059, 1)
z_index = 6
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(45, -6, -2.9999998, -6, -3.0000029, 63, 44.999996, 63)
uv = PackedVector2Array(149, 71, 101, 71, 101, 2.0000002, 149, 2.0000002)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_hairA_#02" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=1884726171]
modulate = Color(0.45490196, 0.31764707, 0.3647059, 1)
z_index = 7
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(19, 1, -37, 1, -37.000004, 64, 18.999998, 64)
uv = PackedVector2Array(207, 71, 151, 71, 151, 8, 207, 8)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="P_faceA" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=1634643460]
z_index = 8
texture = ExtResource("1_r010d")
skeleton = NodePath("..")
polygon = PackedVector2Array(3.934025e-07, -9, -17, -9, -17, -4, 1.7484555e-07, -4)
uv = PackedVector2Array(116.99999, 148, 100, 148, 100, 143, 116.99999, 143)
polygons = [PackedInt32Array(0, 1, 2), PackedInt32Array(2, 3, 0)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1)]
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=464900090]
root_node = NodePath("../SpineRoot/Skeleton2D")
libraries/ = SubResource("AnimationLibrary_167bm")