- 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
11 lines
6.2 KiB
XML
11 lines
6.2 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1 1">
|
|
<g transform="translate(0.33734345282867056,0.2752572326331468) rotate(0) scale(1,1) translate(-0.01919286476298845,-0.019735317662897982)"><path d="M 0.019192864762988426 0.026427532471739314 C 0.01899712013627536 0.026331503332147014 0.016539209556074057 0.02497482616110136 0.01684392924243161 0.025275182796631716 C 0.016539209556074057 0.02497482616110136 0.015571506340923339 0.022203768867999005 0.015536228526697782 0.02282325284537504 C 0.015571506340923339 0.022203768867999005 0.017501505437396175 0.017187907610165132 0.0172672630131383 0.017841375068119298 C 0.017501505437396175 0.017187907610165132 0.018507604430279784 0.01455105836332883 0.018347137617792275 0.01498164334992504 C 0.018507604430279784 0.01455105836332883 0.019263342025088104 0.01248208121888475 0.019192864762988426 0.012674355228964772" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
<path d="M 0.019192864762988426 0.012674355228964772 C 0.019386954152414437 0.012932697789857145 0.021716504145781513 0.016213575920567828 0.021521937436100536 0.01577446595967325 C 0.021716504145781513 0.016213575920567828 0.021638295576091714 0.018531073666841525 0.02152766527916017 0.01794367475969971 C 0.021638295576091714 0.018531073666841525 0.02285067891631116 0.023434211848452718 0.02284950099927907 0.02282325284537505 C 0.02285067891631116 0.023434211848452718 0.02123708059718769 0.025575539432162096 0.021541800283545243 0.02527518279663174 C 0.02123708059718769 0.025575539432162096 0.01899712013627536 0.02652356161133161 0.019192864762988426 0.026427532471739314" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
</g><g transform="translate(0.3373434528286707,0.27834516781562385) rotate(0) scale(1,1) translate(-0.01919286476298845,-0.0207756729228991)"><path d="M 0.019192864762988426 0.023884743351338618 C 0.0190567830984975 0.023823747094186557 0.01738989473549356 0.02276324580004179 0.017559884789097313 0.023152788265513886 C 0.01738989473549356 0.02276324580004179 0.01713620279129281 0.018648123706091316 0.01715298411974342 0.019210233765673483 C 0.01713620279129281 0.018648123706091316 0.017491974497910744 0.016015478959942656 0.01735850884768997 0.01640746755052787 C 0.017491974497910744 0.016015478959942656 0.018990553414743334 0.014227706438947081 0.018754571922392715 0.014506370678650928 C 0.018990553414743334 0.014227706438947081 0.020309929658689458 0.012943257173700935 0.020190286755897402 0.013063496674081704" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
<path d="M 0.020190286755897402 0.013063496674081704 C 0.020284354735794364 0.013175211200164107 0.021388847008193417 0.014682735226774372 0.02131910251466096 0.014404070987070526 C 0.021388847008193417 0.014682735226774372 0.02102002425258459 0.016807981115411454 0.021027220678286884 0.016407467550527875 C 0.02102002425258459 0.016807981115411454 0.021215964077782822 0.019772343825255653 0.021232745406233433 0.019210233765673487 C 0.021215964077782822 0.019772343825255653 0.020655854683275788 0.023542330730985987 0.02082584473687954 0.023152788265513893 C 0.020655854683275788 0.023542330730985987 0.0190567830984975 0.02394573960849068 0.019192864762988426 0.023884743351338618" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
</g><g transform="translate(0.33834087482157965,0.2723031859174035) rotate(0) scale(1,1) translate(-0.022933258138484177,-0.022933258138484177)"><path d="M 0.022933258138484125 0.0219431124484373 C 0.023095336585584426 0.0219431124484373 0.02400678307995401 0.022416785217864648 0.02390572882108588 0.02231591239838557 C 0.02400678307995401 0.022416785217864648 0.024109843397478726 0.02327937263064611 0.024145909244901675 0.02315358628218623 C 0.024109843397478726 0.02327937263064611 0.023326911017015162 0.02388132877138066 0.0234729386520105 0.023825348579904166 C 0.023326911017015162 0.02388132877138066 0.0222475499899623 0.02376936838842767 0.02239357762495764 0.023825348579904166 C 0.0222475499899623 0.02376936838842767 0.021684541184643514 0.023027799933726348 0.021720607032066463 0.02315358628218623 C 0.021684541184643514 0.023027799933726348 0.022061841714750396 0.022215039578906495 0.021960787455882258 0.02231591239838557 C 0.022061841714750396 0.022215039578906495 0.023095336585584426 0.0219431124484373 0.022933258138484125 0.0219431124484373 Z" fill="#cccccc" stroke="#000000" stroke-width="0.001"/>
|
|
</g><g transform="translate(0.3373434528286707,0.2754880484339874) rotate(0) scale(1,1) translate(-0.02456377814682995,-0.024563778146829942)"><path d="M 0.024705026611745895 0.024429220912080933 C 0.024740338727974875 0.024440434014976684 0.024846275076661817 0.02458620435262144 0.024846275076661817 0.02456377814682994 C 0.024846275076661817 0.02458620435262144 0.024669714495516915 0.0247095484844747 0.024705026611745895 0.02469833538157895 C 0.024669714495516915 0.0247095484844747 0.02438721756568507 0.0246871222786832 0.02442252968191405 0.02469833538157895 C 0.02438721756568507 0.0246871222786832 0.02428128121699813 0.024541351941038438 0.02428128121699813 0.02456377814682994 C 0.02428128121699813 0.024541351941038438 0.024457841798143032 0.024418007809185183 0.02442252968191405 0.024429220912080933 C 0.024457841798143032 0.024418007809185183 0.024740338727974875 0.024440434014976684 0.024705026611745895 0.024429220912080933 Z" fill="#cccccc" stroke="#000000" stroke-width="0.001"/>
|
|
</g><g transform="translate(0.3373434528286707,0.2784273467918402) rotate(0) scale(1,1) translate(-0.04481464761927567,-0.044322296567054956)"><path d="M 0.04481464761927567 0.043221366145495925 C 0.04513190507936369 0.043221366145495925 0.04681623032656323 0.04456248600562915 0.04671819237980379 0.044322296567054956 C 0.04681623032656323 0.04456248600562915 0.045734436303585445 0.04625208464516383 0.04599110298038889 0.04610363940838622 C 0.045734436303585445 0.04625208464516383 0.043381525581359014 0.045955194171608614 0.043638192258162456 0.04610363940838622 C 0.043381525581359014 0.045955194171608614 0.04300914080550699 0.04408210712848076 0.04291110285874755 0.044322296567054956 C 0.04300914080550699 0.04408210712848076 0.04513190507936369 0.043221366145495925 0.04481464761927567 0.043221366145495925 Z" fill="#cccccc" stroke="#000000" stroke-width="0.001"/>
|
|
</g></svg>
|