Phase 0.3-0.5: SVG export + YAML sidecars + asset catalog

- Add hair class KeyMap entries (基髪→BaseHair, 前髪→FrontHair, 胸毛→ChestHair)
- Implement cardinal spline → cubic Bezier SVG export for all 175 body parts
- Generate YAML sidecar files (part.yaml) per part with metadata
- Write Catalog.yaml index for runtime asset loading
- Output to SlaveMatrix/Assets/Parts/{EnglishName}/ structure
- Each part directory contains part.yaml + x{x}y{y}.svg morph variants
- 838 SVGs across 324 morph variants, 175 sidecars, 1 catalog
- Extraction tool now serves as the asset build pipeline step
This commit is contained in:
2026-06-13 17:56:01 +02:00
parent fb0ff502f0
commit 58f3bf6884
1070 changed files with 83799 additions and 32 deletions

View File

@@ -0,0 +1,198 @@
id: 腰肌
original_key: 腰肌
resource: 胴体
morph_x: 1
morph_y: 5
variants:
- x: 0
y: 0
file: x0y0.svg
- x: 0
y: 1
file: x0y1.svg
- x: 0
y: 2
file: x0y2.svg
- x: 0
y: 3
file: x0y3.svg
- x: 0
y: 4
file: x0y4.svg
fields:
- name: 淫タトゥ
- name: 植タトゥ
- name: 陰毛_ハート
- name: 陰毛
- name: 獣性
- name:
- name: 虫性
joints:
- position: [
-0.001427499956110473,
0.008042065181432531
]
- position: [
0.00932187317888909,
0.02289364490463667
]
- position: [
0.019320221457267195,
0.02289364490463667
]
- position: [
0.028511229159074496,
0.0285112291590745
]
- position: [
0.015058466988291008,
0.030746841546813605
]
- position: [
0.015058466988291008,
0.01921483862113864
]
- position: [
0.015058466988291008,
0.018622036117003755
]
- position: [
0.0376489974103562,
0.040195088198192244
]
- position: [
0.5000000158677831,
0.49805662642000453
]
- position: [
0.500000015867783,
0.5058485319609038
]
- position: [
0.00932187317888909,
0.02049834611214663
]
- position: [
0.019320221457267195,
0.02049834611214663
]
- position: [
0.015058466988291008,
0.02983465618363446
]
- position: [
0.015058466988291008,
0.01974580084139977
]
- position: [
0.015058466988291008,
0.019077269850600147
]
- position: [
0.0376489974103562,
0.04065581754996377
]
- position: [
0.5000000158677831,
0.4975740042255251
]
- position: [
0.500000015867783,
0.5046737592419609
]
- position: [
0.00932187317888909,
0.01810304731965659
]
- position: [
0.019320221457267195,
0.01810304731965659
]
- position: [
0.015058466988291008,
0.028814050672923735
]
- position: [
0.015058466988291008,
0.02012982856271693
]
- position: [
0.015058466988291008,
0.019406525618164444
]
- position: [
0.0376489974103562,
0.0411165469017353
]
- position: [
0.5000000158677831,
0.4974446253722898
]
- position: [
0.500000015867783,
0.5034555347634302
]
- position: [
0.00932187317888909,
0.015707748527166547
]
- position: [
0.019320221457267195,
0.015707748527166547
]
- position: [
0.015058466988291008,
0.02468285306871422
]
- position: [
0.015058466988291008,
0.01934313365564198
]
- position: [
0.015058466988291008,
0.018732033072211066
]
- position: [
0.0376489974103562,
0.041578698257678966
]
- position: [
0.5000000158677831,
0.4966119766151297
]
- position: [
0.500000015867783,
0.5013888639381867
]
- position: [
0.00932187317888909,
0.013312449734676508
]
- position: [
0.019320221457267195,
0.013312449734676508
]
- position: [
0.015058466988291008,
0.021125690528569743
]
- position: [
0.015058466988291008,
0.018893280929763383
]
- position: [
0.015058466988291008,
0.0183463405913609
]
- position: [
0.0376489974103562,
0.042038005605278345
]
- position: [
0.5000000158677831,
0.4957953566095332
]
- position: [
0.500000015867783,
0.49910453273697497
]