Files
project-rr/characters/goblin/goblin_fetus_head_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

39 lines
2.4 KiB
Plaintext

[gd_scene format=3]
[ext_resource type="Texture2D" path="res://characters/goblin/spine/goblin_fetus_head.png" id="1_ybipw"]
[sub_resource type="Animation" id="Animation_g78r8"]
length = 0.001
loop_mode = 1
[sub_resource type="AnimationLibrary" id="AnimationLibrary_2ukv6"]
_data = {
&"animation": SubResource("Animation_g78r8")
}
[node name="Native" type="Node2D" unique_id=355426093]
[node name="SpineRoot" type="Node2D" parent="." unique_id=2103580535]
position = Vector2(549.19775, 238.13167)
scale = Vector2(14.61413, -14.61413)
[node name="Skeleton2D" type="Skeleton2D" parent="SpineRoot" unique_id=1917554524]
[node name="root" type="Bone2D" parent="SpineRoot/Skeleton2D" unique_id=471858704]
rest = Transform2D(1, 0, 0, 1, 0, 0)
auto_calculate_length_and_angle = false
length = 0.0
bone_angle = 0.0
[node name="BabyA_fetalstage$0_#00" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=1245607607]
texture = ExtResource("1_ybipw")
skeleton = NodePath("..")
polygon = PackedVector2Array(10.836819, 11.36788, 17.04742, 10.12829, 26.27186, 0.87762, 28.3549, -4.36961, 28.3305, -16.05966, 26.57276, -20.45875, 20.565542, -26.45539, 15.922401, -28.04596, 5.5610113, -28.04603, 1.3986912, -25.98899, -5.286599, -19.29438, -6.5826497, -15.56157, -15.89714, -10.73019, -15.92826, -4.55009, -5.28715, 0.74719, -0.17855036, 8.31213, 5.4660597, 11.12067)
uv = PackedVector2Array(29.116821, 2.1974487, 35.32733, 3.4370728, 44.551758, 12.687805, 46.634766, 17.934937, 46.610413, 29.625061, 44.85266, 34.02411, 38.84546, 40.020752, 34.20227, 41.61133, 23.840881, 41.61145, 19.678589, 39.554443, 12.993286, 32.85968, 11.697266, 29.126953, 2.3827515, 24.295593, 2.351654, 18.115356, 12.992737, 12.818115, 18.101318, 5.253174, 23.745972, 2.444641)
polygons = [PackedInt32Array(11, 12, 13), PackedInt32Array(14, 11, 13), PackedInt32Array(2, 3, 9), PackedInt32Array(14, 16, 11), PackedInt32Array(10, 11, 16), PackedInt32Array(3, 4, 9), PackedInt32Array(15, 16, 14), PackedInt32Array(0, 9, 10), PackedInt32Array(0, 10, 16), PackedInt32Array(0, 2, 9), PackedInt32Array(2, 0, 1), PackedInt32Array(7, 9, 4), PackedInt32Array(4, 5, 7), PackedInt32Array(5, 6, 7), PackedInt32Array(8, 9, 7)]
bones = ["root", PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)]
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=2110487792]
root_node = NodePath("../SpineRoot/Skeleton2D")
libraries/ = SubResource("AnimationLibrary_2ukv6")