diff options
author | metamuffin <metamuffin@disroot.org> | 2025-05-19 15:55:38 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-05-19 15:55:38 +0200 |
commit | 2681bc99321231cb5d9cfbcb110d51abd8c27749 (patch) | |
tree | 543cc1be0b895ea18f4b577c1e40246a1259e463 /exporter/src/bin/scenetree.rs | |
parent | c30c4d2928eb724e79dcbdb293a0db6cafaf6123 (diff) | |
download | unity-tools-master.tar unity-tools-master.tar.bz2 unity-tools-master.tar.zst |
Diffstat (limited to 'exporter/src/bin/scenetree.rs')
-rw-r--r-- | exporter/src/bin/scenetree.rs | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/exporter/src/bin/scenetree.rs b/exporter/src/bin/scenetree.rs index 71f0db6..e52b210 100644 --- a/exporter/src/bin/scenetree.rs +++ b/exporter/src/bin/scenetree.rs @@ -12,16 +12,21 @@ fn main() -> anyhow::Result<()> { let draw_children = var("DRAW_CHILDREN").is_ok(); println!("digraph {{"); - for ob in bundle.all_toplevel_of_class("Transform") { + for ob in bundle + .all_toplevel_of_class("Transform") + .into_iter() + .chain(bundle.all_toplevel_of_class("RectTransform")) + { let i = ob.path_id; let tr = ob.load(&mut bundle)?.parse::<Transform>()?; - let mut name = "(no gameobject)".to_string(); + println!("n{i} [label=\"\", color=blue];"); if !tr.gameobject.is_null() { + let j = tr.gameobject.path_id; let go = tr.gameobject.load(&mut bundle)?; - name = go.name; + println!("g{j} [label={:?}]", go.name); + println!("n{i} -> g{j}") } - println!("n{i} [label={name:?}];"); if !tr.father.is_null() { assert_eq!(tr.father.file_id, 0); |