Hierarchy Exporter — export Unity scene hierarchies to Tree / JSON / YAML / Markdown


Hi everyone — excited to share that Hierarchy Exporter just went live on the Unity Asset Store! :tada:

It’s an Editor-only tool that exports any GameObject, prefab, or entire scene to Tree, JSON, YAML, or Markdown with configurable detail levels. Built for debugging, documentation, code reviews, bug reports, and version-controlled snapshots of scene structure.

:shopping_cart: Asset Store: Hierarchy Exporter
:blue_book: Documentation: PDF user manual included in the package


Why I built it

When debugging a complex scene or reviewing a teammate’s prefab, I always wanted a quick way to see the structure as text — something I could paste into a Slack thread, a pull request, or a bug report. Unity’s Hierarchy window is interactive, but not shareable and not diffable.

So I built a tool that produces clean, deterministic text output you can paste, share, or commit to git.


Features

  • 4 output formats — Tree (Unicode box-drawing), JSON (RFC 8259), YAML (YAML 1.2), Markdown (CommonMark)
  • 4 detail levels — Structure → Components → Values (curated properties) → Serialized (all fields)
  • 3 target types — scene GameObjects, prefab assets, entire scenes
  • In-window preview with syntax coloring, text selection, and subtree folding
  • VS Code–style search — case-sensitive, whole-word, and regex modes
  • Filtering — by Prefabs, Inactive, Missing Scripts, Tag, Layer, or Prefab source
  • Deterministic output — byte-identical across machines and OSes (perfect for CI and git diffs)
  • Scales to huge hierarchies — incremental traversal, parallel formatting, viewport virtualization for tens of thousands of nodes
  • Full Unicode — CJK, emoji, surrogate pairs, fullwidth characters
  • Zero dependencies, zero runtime cost — Editor-only, works with any render pipeline

Output examples

Tree

SpaceStation
├── Main Camera
├── Spot Light
├── EventSystem
├── StationManager
│   [Transform, StationManager]
└── CastleQuarter
    ├── MarketDistrict
    └── Harbor

JSON

{
  "name": "SpaceStation",
  "children": [
    {
      "name": "Main Camera",
      "components": [{ "type": "Camera" }]
    }
  ]
}

YAML

- name: SpaceStation
  children:
    - name: Main Camera
      components:
        - type: Camera

Markdown

## **SpaceStation**
  - **Main Camera**
    - **Components:** `Camera`

Use cases

  • Bug reports — paste a tree of the broken state into your issue tracker
  • Documentation — drop scene or prefab structures into design docs and wikis
  • Code review — share a teammate’s prefab structure without screenshots
  • CI / version control — exports are byte-identical and diff-friendly
  • LLM context — paste hierarchies into ChatGPT or Claude when asking for help

Requirements

  • Unity — 2021.3 LTS or newer
  • Render pipeline — Any (Editor-only, no runtime code)
  • Platform — Windows, macOS, Linux

Quick start

  1. Open Tools → Hierarchy Exporter
  2. Drag a GameObject, prefab, or scene into the target field
  3. Pick a format and detail level
  4. Hit Copy to Clipboard or Export…

Tip: right-click any GameObject in the Hierarchy window and pick Export Hierarchy… to open the tool with that object pre-selected.


Happy to answer questions, and feedback / feature requests are very welcome — would love to hear what you’d want from a tool like this!