Skip to content

feat(export)!: give every object a json document and list its references - #59

Merged
nichinichisou0609 merged 1 commit into
redesign/depotfrom
redesign/object-data
Oct 14, 2026
Merged

nichinichisou0609 merged 1 commit into
redesign/depotfrom
redesign/object-data

Conversation

@nichinichisou0609

Copy link
Copy Markdown
Collaborator
  • Every object a converter takes has a json artifact or is contained in another object's: Texture2D, Mesh, TextAsset and Font add their typetree JSON without the bytes their other artifact holds; a sprite's and a prefab's documents are their json (the meta and prefab roles are gone).
  • A sprite's json holds its decoded geometry and the render data its image was cut from (its own, or its atlas' entry).
  • Each item lists refs: the objects its documents reference, other bundles' included, its own prefab's objects left out (nnnotes.result/1 schema).
  • original layout: a secondary artifact whose role is its extension goes to <path>.<ext> (x.png.json).
  • Converters: tex.png/2, sprite.png/2, mesh.glb/2, prefab.json/2, data/2, font/2; docs and the golden record updated.

On the golden fixtures every other artifact keeps its bytes; items change only by the added json artifacts, the renamed roles and refs.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

Every object a converter takes has a `json` artifact or is contained in
another object's. A Texture2D, Mesh, TextAsset or Font adds its typetree
JSON without the bytes its other artifact holds (the pixels, the vertex,
index and compressed mesh data, the stored text, the font file). A
sprite's document and a prefab's are their `json`.

A sprite's json holds its decoded geometry (positions, triangles,
stored texture coordinates) and the render data its image was cut
from: the sprite's own or its atlas' entry, with texture, rects,
uvTransform, downscale and settings.

Each item lists in `refs` the ids of the objects its documents
reference, other bundles' objects included and the objects of its own
prefab left out, so the objects reachable from an object follow from
the items alone.

The original layout writes a secondary artifact whose role is its
extension at `<path>.<ext>` (a texture's json at x.png.json).

BREAKING CHANGE: the `meta` and `prefab` roles are `json`; the
converters are tex.png/2, sprite.png/2, mesh.glb/2, prefab.json/2, data/2
and font/2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@nichinichisou0609
nichinichisou0609 merged commit e94755d into redesign/depot Oct 14, 2026
8 checks passed
@nichinichisou0609
nichinichisou0609 deleted the redesign/object-data branch October 14, 2026 17:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant