Files
HEROLL/art-bible/specs/asset-import-rules.csv

3.1 KiB

1asset_typenaming_patternsource_formatexport_formatauthoring_sizeunity_importfilteringcompressionatlas_or_grouppivot_or_slicevalidation
2WorldCharacterCHR_{id}_{skin}_{action}_{frame}Aseprite or PSDPNG RGBA96-192px logical heightSprite Multiple; PPU32; mesh FullRectPoint no mipmapsASTC 6x6 Android / ASTC 6x6 iOSAtlas_CHR_{family}feet pivot normalized y=0.08All frames integer aligned; no edge alpha bleed
3MonsterMON_{biome}_{family}_{variant}_{action}_{frame}Aseprite or PSDPNG RGBA64-144px logical heightSprite Multiple; PPU32Point no mipmapsASTC 6x6Atlas_MON_{biome}feet pivot normalized y=0.08Silhouette and hostile accent check
4BossBOSS_{id}_{phase}_{action}_{frame}Aseprite or PSDPNG RGBA192x137 minimum logical boxSprite Multiple; PPU32Point no mipmapsASTC 4x4Addressables/Boss_{id}feet pivot shared across every clipNo frame exceeds box without explicit socket update
5BiomeBackENV_{biome}_Back_{index}PSD layeredPNG RGB1920x1080 source or 320x180 pixel baseSprite Single; mipmaps optionalPoint when pixel base otherwise BilinearASTC 6x6Addressables/Biome_{biome}center pivotNo alpha unless parallax cutout is required
6BiomeFrontENV_{biome}_Front_{index}PSD layeredPNG RGBA1920x1080 source or 320x180 pixel baseSprite SinglePoint when pixel baseASTC 6x6Addressables/Biome_{biome}bottom centerPlayable edge has >=4px value separation
7TileUI_TILE_{type}_{state}PSD or vector masterPNG RGBA256x256 sourceSprite SinglePoint or Bilinear by family; never mixed in same atlasASTC 6x6Atlas_UI_Tilecenter pivot with 4px transparent safe edgeRecognizable at 64x64
8UI9SliceUI_PANEL_{family}_{state}PSD or vector masterPNG RGBAminimum 96x96 sourceSprite SinglePoint or Bilinear by familyASTC 6x6Atlas_UI_Coreborder >=12px; corners never scaledStress test at 50%-250% size
9IconICON_{domain}_{id}_{state}PSD or vector masterPNG RGBA256x256 sourceSprite SingleBilinear no mipmapsASTC 6x6Atlas_ICON_{domain}centered optical boundsReadable at 48x48 and grayscale
10PortraitPORT_{character}_{expression}PSD layeredPNG RGBA1024x1024 or 1024x768Sprite SingleBilinear no mipmapsASTC 6x6Addressables/Portraitsanchor eyes and pointer handFace readable at 160px height
11VFXSheetVFX_{element}_{shape}_{variant}Aseprite or EmberGen sheetPNG RGBA64-256px cells; power-of-two sheetSprite MultiplePoint for pixel VFX; Bilinear for soft masksASTC 4x4Atlas_VFX_{element}center or impact-origin pivotFrame count and FPS stored in clip metadata
12FontFONT_{family}_{weight}OTF or TTFTMP assetCJK dynamic source + 4096 atlasTMP DynamicLinearR8 or platform defaultGroup_Font_{locale}fallback chain definedNo missing glyphs in zh-Hans zh-Hant en ja ko
13AnimationANIM_{assetId}_{action}_{variant}Unity clip or Aseprite tagsAnimationClip60Hz timelinen/an/an/aController_{assetId}events are presentation-onlyNo damage or reward logic depends solely on clip event
14MaterialMAT_{domain}_{blend}_{variant}ShaderGraph or materialUnity Materialn/aSRP Batcher compatiblen/an/aGroup_Materialsn/aKeywords <=4 and mobile variant provided