Files
project-rr/characters/baby/human_fetus_body_native.tscn
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.5 KiB
Plaintext

[gd_scene format=3]
[ext_resource type="Texture2D" path="res://characters/baby/spine/human_fetus_body.png" id="1_lgyxl"]
[sub_resource type="Animation" id="Animation_cb7ji"]
length = 0.001
loop_mode = 1
[sub_resource type="AnimationLibrary" id="AnimationLibrary_8kdfb"]
_data = {
&"animation": SubResource("Animation_cb7ji")
}
[node name="Native" type="Node2D" unique_id=459166671]
[node name="SpineRoot" type="Node2D" parent="." unique_id=1582844396]
position = Vector2(660.4403, 442.65265)
scale = Vector2(13.632449, -13.632449)
[node name="Skeleton2D" type="Skeleton2D" parent="SpineRoot" unique_id=1246612677]
[node name="root" type="Bone2D" parent="SpineRoot/Skeleton2D" unique_id=1384114334]
rest = Transform2D(1, 0, 0, 1, 0, 0)
auto_calculate_length_and_angle = false
length = 0.0
bone_angle = 0.0
[node name="BabyB_fetalstage$0_#00" type="Polygon2D" parent="SpineRoot/Skeleton2D" unique_id=716552441]
texture = ExtResource("1_lgyxl")
skeleton = NodePath("..")
polygon = PackedVector2Array(-1.3515112, 27.189, 3.9821088, 26.12778, 7.117479, 22.99363, 12.037709, 15.6359, 12.955189, 12.12699, 11.28911, 5.55613, 11.28643, -4.58523, 9.21129, -8.75613, 6.0781703, -12.93209, 1.8012607, -15.06313, -7.5737395, -15.06002, -12.85585, -9.77627, -14.72432, -6.41689, -15.95396, -1.47573, -15.936691, 14.83433, -11.666211, 19.10026, -7.959671, 20.90812, -7.968761, 23.80039, -4.589491, 27.15751)
uv = PackedVector2Array(16.97699, 2.3700562, 22.310608, 3.4312744, 25.445984, 6.5654297, 30.36621, 13.923157, 31.283691, 17.432068, 29.617615, 24.00293, 29.61493, 34.144287, 27.539795, 38.315186, 24.406677, 42.49115, 20.12976, 44.622192, 10.754761, 44.61908, 5.4726563, 39.335327, 3.604187, 35.975952, 2.3745422, 31.03479, 2.3918152, 14.724731, 6.6622925, 10.458801, 10.368835, 8.65094, 10.359741, 5.758667, 13.739014, 2.4015503)
polygons = [PackedInt32Array(16, 17, 18), PackedInt32Array(3, 16, 2), PackedInt32Array(5, 3, 4), PackedInt32Array(16, 18, 0), PackedInt32Array(1, 16, 0), PackedInt32Array(16, 1, 2), PackedInt32Array(3, 5, 16), PackedInt32Array(14, 5, 13), PackedInt32Array(5, 12, 13), PackedInt32Array(5, 15, 16), PackedInt32Array(5, 14, 15), PackedInt32Array(5, 6, 12), PackedInt32Array(6, 7, 12), PackedInt32Array(11, 12, 7), PackedInt32Array(7, 9, 11), PackedInt32Array(9, 10, 11), PackedInt32Array(7, 8, 9)]
bones = ["root", PackedFloat32Array(1, 1, 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=409796301]
root_node = NodePath("../SpineRoot/Skeleton2D")
libraries/ = SubResource("AnimationLibrary_8kdfb")