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:
23
SlaveMatrix/Assets/Parts/頬瞼左/x0y3.svg
Normal file
23
SlaveMatrix/Assets/Parts/頬瞼左/x0y3.svg
Normal file
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1 1">
|
||||
<g id="瞼左">
|
||||
<g transform="translate(0.3259798238023767,0.12265017031995629) rotate(0) scale(1,1) translate(-0.014168721482344672,-0.015561954080885157)"><path d="M 0.02031932413981384 0.01425460312781501 C 0.020290769369989935 0.01445792035835401 0.019793416727615382 0.01709243816526778 0.01997666690192697 0.016694409894283016 C 0.019793416727615382 0.01709243816526778 0.017719524553560195 0.019327986675950072 0.018120322048074775 0.019030942379632182 C 0.017719524553560195 0.019327986675950072 0.014654546746296241 0.020367887362853537 0.015167096967752007 0.02025894145009769 C 0.014654546746296241 0.020367887362853537 0.011482753860128115 0.020229948892554528 0.011969719390605597 0.020338293332702328 C 0.011482753860128115 0.020229948892554528 0.008994210554878047 0.01866972581009518 0.009323510602022222 0.0189588081683241 C 0.008994210554878047 0.01866972581009518 0.00790933617677993 0.0166951797727579 0.008018118824875492 0.0168693050339553" fill="none" stroke="none" stroke-width="0"/>
|
||||
<path d="M 0.008018118824875492 0.0168693050339553 C 0.00811037680154631 0.01687838189814603 0.009406418071941494 0.016978025797786865 0.00912521454492529 0.01697822740424404 C 0.009406418071941494 0.016978025797786865 0.011827389754546924 0.01681725117971657 0.01139256114906995 0.016866885756469194 C 0.011827389754546924 0.01681725117971657 0.014830080521031946 0.01627911386609448 0.01434315781064897 0.01638261248321253 C 0.014830080521031946 0.01627911386609448 0.017653057572181066 0.015493385065881894 0.017235633673665658 0.015624902351052555 C 0.017653057572181066 0.015493385065881894 0.019609218798346213 0.01469021345922814 0.019352244592833863 0.014804405061164603 C 0.019609218798346213 0.01469021345922814 0.020399914102062173 0.014208786300035877 0.02031932413981384 0.01425460312781501" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
</g><g transform="translate(0.3221542156499636,0.12440702256242396) rotate(0) scale(1,1) translate(-0.002250839720332365,-0.0018079033898251923)"><path d="M 0.0012329129764107735 0.0026620453452152887 C 0.0012693300865260864 0.0026193097416330963 0.0017427525180251549 0.0020637468950645923 0.0016699182977945289 0.0021492181022289775 C 0.0017427525180251549 0.0020637468950645923 0.0021433407292935974 0.0015936552556604729 0.0021069236191782843 0.0016363908592426655" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0021069236191782843 0.0016363908592426655 C 0.002115676733080976 0.0016323092151971374 0.0022303353409379887 0.001584171236169513 0.0022119609860105833 0.0015874111306963283 C 0.0022303353409379887 0.001584171236169513 0.002344948483715841 0.0016038934714187822 0.0023274158783071486 0.0015975121249208837 C 0.002344948483715841 0.0016038934714187822 0.002434345259344399 0.001678279999552988 0.002422352250914892 0.001663987288671111 C 0.002434345259344399 0.001678279999552988 0.0024745718739880448 0.0017873990104308158 0.00247133197946123 0.0017690246555034103 C 0.0024745718739880448 0.0017873990104308158 0.0024548496387387752 0.0019020121532086676 0.002461230985236674 0.0018844795477999752 C 0.0024548496387387752 0.0019020121532086676 0.0023892162245072596 0.0019873272847916986 0.0023947558214864454 0.0019794159204077197" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0023947558214864454 0.0019794159204077197 C 0.0023463457029416256 0.002007858813108035 0.00171701416185897 0.002377616418212135 0.0018138343989486095 0.002320730632811504 C 0.00171701416185897 0.002377616418212135 0.0011845028578659539 0.002690488237915604 0.0012329129764107735 0.0026620453452152887" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
</g><g transform="translate(0.3247628946926182,0.12410783857320949) rotate(0) scale(1,1) translate(-0.002250839720332365,-0.0018079033898251923)"><path d="M 0.001993491739451025 0.0023588348276175684 C 0.0019952398585003197 0.0023367880256851045 0.0020179654061411507 0.0020501796005630724 0.0020144691680425613 0.0020942732044280004 C 0.0020179654061411507 0.0020501796005630724 0.0020371947156833936 0.0018076647793059688 0.0020354465966340987 0.0018297115812384327" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0020354465966340987 0.0018297115812384327 C 0.0020369426892231372 0.00182049338911444 0.0020608005505421178 0.001702639941364702 0.002053399707702562 0.001719093275750519 C 0.0020608005505421178 0.001702639941364702 0.002138892695810151 0.00162172298447333 0.002124256710708771 0.0016322715686086294 C 0.002138892695810151 0.00162172298447333 0.0022469809558939803 0.001590692916842489 0.002229031528919125 0.0015925102661269257 C 0.0022469809558939803 0.001590692916842489 0.002356103168792855 0.001617864220034945 0.0023396498344070383 0.001610463377195389 C 0.002356103168792855 0.001617864220034945 0.0024370201256842276 0.0016959563653029795 0.002426471541548928 0.0016813203802015992 C 0.0024370201256842276 0.0016959563653029795 0.002469546285904107 0.0017948264332628147 0.0024662328440306315 0.001786095198411952" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0024662328440306315 0.001786095198411952 C 0.002446535298006481 0.0018099593496288527 0.002190467199692528 0.0021201933154485616 0.0022298622917408285 0.00207246501301476 C 0.002190467199692528 0.0021201933154485616 0.001973794193426875 0.002382698978834469 0.001993491739451025 0.0023588348276175684" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
</g></g>
|
||||
<g id="瞼右">
|
||||
<g transform="translate(0.3259798238023767,0.12265017031995629) rotate(0) scale(1,1) translate(-0.014168721482344672,-0.015561954080885157)"><path d="M 0.020319324139813834 0.01425460312781497 C 0.020227066163143015 0.01424552626362424 0.018931024892747814 0.014145882363983387 0.01921222841976402 0.014145680757526218 C 0.018931024892747814 0.014145882363983387 0.016510053210142383 0.01430665698205363 0.016944881815619355 0.014257022405301002 C 0.016510053210142383 0.01430665698205363 0.013507362443657358 0.014844794295675798 0.013994285154040335 0.014741295678557744 C 0.013507362443657358 0.014844794295675798 0.010684385392508228 0.015630523095888305 0.011101809291023635 0.015499005810717646 C 0.010684385392508228 0.015630523095888305 0.008728224166343104 0.016433694702542124 0.008985198371855449 0.016319503100605655 C 0.008728224166343104 0.016433694702542124 0.007937528862627155 0.016915121861734394 0.008018118824875485 0.01686930503395526" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.008018118824875485 0.01686930503395526 C 0.008046673594699391 0.016665987803416257 0.008544026237073938 0.014031469996502484 0.00836077606276235 0.014429498267487248 C 0.008544026237073938 0.014031469996502484 0.010617918411129138 0.011805788354221091 0.010217120916614558 0.012092965782138098 C 0.010617918411129138 0.011805788354221091 0.013671665326137788 0.010908789037629683 0.013170345996937307 0.010983369132483175 C 0.013671665326137788 0.010908789037629683 0.016709036721617176 0.01132341530855843 0.01623295286702034 0.011198004643896186 C 0.016709036721617176 0.01132341530855843 0.019223883191498786 0.012743013648756676 0.018883352252099327 0.012488297108430111 C 0.019223883191498786 0.012743013648756676 0.020438988463790043 0.014401795296097041 0.020319324139813834 0.01425460312781497" fill="none" stroke="none" stroke-width="0"/>
|
||||
</g><g transform="translate(0.3217703806685377,0.12260122095173658) rotate(0) scale(1,1) translate(-0.002250839720332365,-0.0018079033898251923)"><path d="M 0.0009735065355643082 0.001441633993016366 C 0.0010293001461611597 0.0014479276993371345 0.0017546170839202297 0.0015297458815071256 0.0016430298627265266 0.0015171584688655885 C 0.0017546170839202297 0.0015297458815071256 0.0023683468004855966 0.0015989766510355803 0.002312553189888745 0.0015926829447148116" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.002312553189888745 0.0015926829447148116 C 0.0023208317053379384 0.0015976571786322385 0.0024248561784541694 0.0016657950563028219 0.002411895375279067 0.0016523737517239335 C 0.0024248561784541694 0.0016657950563028219 0.0024725965605036145 0.001771842191966276 0.0024680828279899708 0.0017537385996614716 C 0.0024725965605036145 0.001771842191966276 0.002460917376313097 0.0018875518964741288 0.002466060165442793 0.001869616859381587 C 0.002460917376313097 0.0018875518964741288 0.0023929480538547247 0.001981919847947078 0.0024063693584336163 0.0019689590447719723 C 0.0023929480538547247 0.001981919847947078 0.0022869009181912914 0.002029660229996492 0.0023050045104960936 0.002025146497482857 C 0.0022869009181912914 0.002029660229996492 0.0021794697291326473 0.0020229552797233234 0.0021891262507759894 0.002023123834935595" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0021891262507759894 0.002023123834935595 C 0.002138475429308836 0.0019988950915222937 0.0014800147502358422 0.0016839214271493783 0.001581316393170149 0.0017323789139759807 C 0.0014800147502358422 0.0016839214271493783 0.0009228557140971549 0.0014174052496030648 0.0009735065355643082 0.001441633993016366" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
</g><g transform="translate(0.3242752166498374,0.12181349376941134) rotate(0) scale(1,1) translate(-0.002250839720332365,-0.0018079033898251923)"><path d="M 0.001791656637792142 0.001409275331203542 C 0.0018193576662450248 0.0014230646044015383 0.0021794710361325038 0.0016023251559754994 0.002124068979226736 0.0015747466095794977 C 0.0021794710361325038 0.0016023251559754994 0.0024841823491142385 0.001754007161153568 0.0024564813206613537 0.0017402178879555627" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0024564813206613537 0.0017402178879555627 C 0.0024570056540418224 0.0017495419661178232 0.0024590897015538526 0.0018697679593105722 0.002462773321226976 0.001852106825902688 C 0.0024590897015538526 0.0018697679593105722 0.0024002572096651215 0.0019656046692044632 0.002412277884583869 0.0019521514888501713 C 0.0024002572096651215 0.0019656046692044632 0.0023013884221745927 0.002019185448643326 0.002318525222202008 0.0020135449901541895 C 0.0023013884221745927 0.002019185448643326 0.002188975150846998 0.0020161533710466887 0.0022066362842548823 0.0020198369907198123 C 0.002188975150846998 0.0020161533710466887 0.002093138440953108 0.0019573208791579567 0.0021065916213073997 0.001969341554076704 C 0.002093138440953108 0.0019573208791579567 0.0020400819948947135 0.0018677761698296892 0.0020451981200033816 0.0018755888916948441" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
<path d="M 0.0020451981200033816 0.0018755888916948441 C 0.0020346338915779123 0.001856159160007702 0.0018972989220468134 0.0016035726480748635 0.00191842737889775 0.0016424321114491386 C 0.0018972989220468134 0.0016035726480748635 0.0017810924093666746 0.001389845599516409 0.001791656637792142 0.001409275331203542" fill="none" stroke="#000000" stroke-width="0.001"/>
|
||||
</g></g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 11 KiB |
Reference in New Issue
Block a user