- 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
3.6 KiB
XML
11 lines
3.6 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.33734345282867073,0.37369955748837125) rotate(0) scale(1,1) translate(-0.02695798876394463,-0.048553907348968924)"><path d="M -0.0023818065604263227 0.0031475342600275884 C 6.3176383271254E-05 0.0021657766506389294 0.03184795465133975 -0.008633557052636322 0.026957988763944597 -0.008633557052636322 C 0.03184795465133975 -0.008633557052636322 0.058742767032013074 0.0041292918694162475 0.0562977840883155 0.0031475342600275884" fill="none" stroke="none" stroke-width="0"/>
|
|
<path d="M 0.0562977840883155 0.0031475342600275884 C 0.05668965457910811 0.004157576597500429 0.06162523618809618 0.017344426080679647 0.06100022997782682 0.015268042309701673 C 0.06162523618809618 0.017344426080679647 0.06403099433102455 0.029130480945268412 0.0637978586115478 0.02806413951176328" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
<path d="M 0.0637978586115478 0.02806413951176328 C 0.06369619239780924 0.02895297980860845 0.06210033070630658 0.0404126378661147 0.06257786404668517 0.038730223073905355 C 0.06210033070630658 0.0404126378661147 0.057691591400364735 0.049046691513639634 0.05806745852700477 0.048253117018275456" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
<path d="M 0.05806745852700477 0.048253117018275456 C 0.05547500271341642 0.04932632481334799 0.021773077136767904 0.061131610559145844 0.026957988763944597 0.061131610559145844 C 0.021773077136767904 0.061131610559145844 -0.006743936812703907 0.04717990922320292 -0.00415148099911556 0.048253117018275456" fill="none" stroke="none" stroke-width="0"/>
|
|
<path d="M -0.00415148099911556 0.048253117018275456 C -0.0045273481257555905 0.04745954252291128 -0.009139419859174507 0.03704780828169601 -0.008661886518795918 0.038730223073905355 C -0.009139419859174507 0.03704780828169601 -0.009983547297397179 0.027175299214918115 -0.00988188108365862 0.028064139511763286" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
<path d="M -0.00988188108365862 0.028064139511763286 C -0.009648745364181865 0.026997798078258153 -0.006459246239668204 0.013191658538723698 -0.007084252449937562 0.015268042309701673 C -0.006459246239668204 0.013191658538723698 -0.0019899360696337192 0.002137491922554748 -0.0023818065604263227 0.0031475342600275884" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
</g><g transform="translate(0.33734345282867073,0.35213978389780043) rotate(0) scale(1,1) translate(-0.35878523175949983,-0.35878523175950006)"><path d="M 0.3593148182901859 0.3571376708093959 C 0.35938622570740536 0.3571901134997628 0.36027038992036803 0.35790427983964057 0.3601717072968196 0.35776698309379856 C 0.36027038992036803 0.35790427983964057 0.3604990097727674 0.3589549398704503 0.3604990097727674 0.35878523175950006 C 0.3604990097727674 0.3589549398704503 0.3600730246732711 0.3599407771710436 0.3601717072968196 0.3598034804252016 C 0.3600730246732711 0.3599407771710436 0.35915514645118546 0.3604852353999709 0.3593148182901859 0.36043279270960404 C 0.35915514645118546 0.3604852353999709 0.35809597338981375 0.3603803500192372 0.3582556452288142 0.36043279270960404 C 0.35809597338981375 0.3603803500192372 0.3573000735986322 0.3596661836793596 0.35739875622218065 0.3598034804252016 C 0.3573000735986322 0.3596661836793596 0.3570714537462325 0.3586155236485498 0.3570714537462325 0.35878523175950006 C 0.3570714537462325 0.3586155236485498 0.3574974388457291 0.35762968634795655 0.35739875622218065 0.35776698309379856 C 0.3574974388457291 0.35762968634795655 0.35832705264603365 0.357085228119029 0.3582556452288142 0.3571376708093959" fill="none" stroke="#000000" stroke-width="0.001"/>
|
|
</g></svg>
|