From e56e2afb92af56d0ee9a6f402b5e06ce83b56b02 Mon Sep 17 00:00:00 2001 From: _bryan Date: Sat, 18 Feb 2023 11:11:37 +0100 Subject: [PATCH] Scene graph tree added --- assets/models/debugplane.glb | Bin 0 -> 88300 bytes icons/anchor.png | Bin 0 -> 523 bytes icons/chart_organisation.png | Bin 0 -> 434 bytes icons/film.png | Bin 0 -> 653 bytes icons/link.png | Bin 0 -> 343 bytes icons/shape_flip_horizontal.png | Bin 0 -> 403 bytes icons/sound.png | Bin 0 -> 610 bytes icons/user.png | Bin 0 -> 741 bytes source/packages/manager.py | 14 +++++- source/pkgexplore.py | 74 +++++++++++++++++++++++++++++--- 10 files changed, 80 insertions(+), 8 deletions(-) create mode 100644 assets/models/debugplane.glb create mode 100644 icons/anchor.png create mode 100644 icons/chart_organisation.png create mode 100644 icons/film.png create mode 100644 icons/link.png create mode 100644 icons/shape_flip_horizontal.png create mode 100644 icons/sound.png create mode 100644 icons/user.png diff --git a/assets/models/debugplane.glb b/assets/models/debugplane.glb new file mode 100644 index 0000000000000000000000000000000000000000..a48ca4be17a5ddcc69c375fa4bfab43ed1da7e6a GIT binary patch literal 88300 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 literal 0 HcmV?d00001 diff --git a/icons/link.png b/icons/link.png new file mode 100644 index 0000000000000000000000000000000000000000..25eacb7c2524142262d68bf729c5e2b61adfd6d4 GIT binary patch literal 343 zcmV-d0jU0oP)$`dXYaZs9=SbAto%g@>T~?_bH&lTUn@`uo|1bXE{eSR(AO)ESb=V4`uk}mK|39Px&03WLbv~pzk+s7D@lK^ zn+aB+sp)&Y_x-B3>;6ywU--WQNUr<8>TU0P-|L#1U&;A)67w(+> pDf@fM7q9#F25QXo3rUI;002ro52U44e~JJA002ovPDHLkV1l;_q@Mr) literal 0 HcmV?d00001 diff --git a/icons/shape_flip_horizontal.png b/icons/shape_flip_horizontal.png new file mode 100644 index 0000000000000000000000000000000000000000..8667c81f8b2ae38922a801bf8ad50ae8cfa7e7fb GIT binary patch literal 403 zcmV;E0c`$>P)+Q9Q4|H>Gx;$-G!ZQV78ZfoO&~77*3Nn$jc&kZKoCTmAc8K!LP4<=!NN2tOlc{Z zN$xqL$HGYbLH113OaYT)W33X5N`C}SuCsO{M4d)0!W1Bd zPzF|)%AK8~r}nqN@l_U#p4Mv-asy1$8wsx&u~-Jolx`n9hA#o5C(U{(u9g9#gDRe2 z!e}g*5zR(5HY)i99A1uEM(-{!M3@w(Q`3nM*_asR0^}go-P*tZD6~=(l~M=~!wKks x1gKbXqcC{MAPSU2?m_Ytz$O4h|MV~XCU1VFDRfPcVFW5d%9V=z{?A#;oriL5xO+n6O2X~nf!lQuE^VWXpgu83qI(qCF{ zS}dqc=wWy-JjhR6YYDxINHb)T^nMSh)vA20R`F7)lzCSCZF94My}d73T>N+m zpyXWPL`#FF;s+j3t(LL2R!6+EP98p9G9EaJe<5S)o@#CPu0JyV*YBbiNC<>y{C`3_2 zFc^fUC0P=`0GC2D0rmxry!i<{eh#|t2UjSV*w|QyY37m5W)KQZKoA6m%^;bK|K7sb zq~^Y!1U(%y>Cs5W^^bz?JUQeR7IK)M&$43OYdMwDJVcVBtSjl_Ar8Hmr2)a$eK-tv zNC4d)(7D`Piq~gVUR7m2k$BH5O6=$i%I6Kpa_sVNy!&j)9UKPT@*VWNNNm+UIUciF wPJ00!a`S;oH}3WS@hUTDnx*^y9@F3E2OYGed{u8eJ^%m!07*qoM6N<$f+a~A3jhEB literal 0 HcmV?d00001 diff --git a/icons/user.png b/icons/user.png new file mode 100644 index 0000000000000000000000000000000000000000..79f35ccbdad44489dbf07d1bf688c411aa3b612c GIT binary patch literal 741 zcmVz1iyEv%?$mbQ(# zwJpuiQJP8?X_`#S8b+U_G6=ziYB!xPAcq{)ZJ0bECH@ zYx#`n8^Wzn^J!4>=q^bltNO15ry?0ecSLkjpT@vlid!jk)Fjf7&)q_V5zGs#3N%6* zbW~7Hg=&P0&~Y(|g>$hC9FL?;ttzPDZbpZu9OLb33^e2;FNTGJxScp1&q4M+y2ntQ z?C(=hpU$3~`Thx0eHwi0x`q+!d5k@|0_WHe%sG3e-s^MM`xM-ig!VcIA7H}X1ot~L zg=MLB4w-Q;Bi!!u2|I+Qb;0{{4Q53YX6+4_aXena{nmt*!YG7ua~`qc>o=?@U?rOU znS7%>klzi*muXnbM6i@4FR@s^8vTjDgy&%J?w?`u>NYMDFa_2%0SQ(qJE<3=<8Bzo zfdU60e*y(^$RF%r$kl)p7=7tlCDa$+J7w>}DU(O#~fk>pYuRvHi1E9^msg{tLeV XM&GIRvfA7%00000NkvXXu0mjf&%8>| literal 0 HcmV?d00001 diff --git a/source/packages/manager.py b/source/packages/manager.py index a6c684b..3edd651 100644 --- a/source/packages/manager.py +++ b/source/packages/manager.py @@ -1,5 +1,6 @@ import os, json +import posixpath from .package import Package from .errors import * @@ -38,4 +39,15 @@ class PackageManager: self.vfs.mount(filepath, vfs_path, 0) new_package = Package(type('', (object,), meta), vfs_path, self.vfs) self.package_map[meta['name']] = new_package - self.package_list.insert(0, new_package) \ No newline at end of file + self.package_list.insert(0, new_package) + + def get_model_path(self, name): + for imported_package in reversed(self.package_list): + target_path = posixpath.join(imported_package.mount_dir, 'models', name) + print(target_path) + if self.vfs.exists(target_path): + return target_path + main_path = posixpath.join(self.main_package.mount_dir, 'models', name) + if (self.vfs.exists(main_path)): + return main_path + return None diff --git a/source/pkgexplore.py b/source/pkgexplore.py index 1ab8da9..9f68a81 100644 --- a/source/pkgexplore.py +++ b/source/pkgexplore.py @@ -3,7 +3,7 @@ import tkinter as tk import tkinter.ttk as ttk from source.packages import PackageManager from direct.showbase.ShowBase import ShowBase -from panda3d.core import VirtualFileSystem, Material, WindowProperties +from panda3d.core import VirtualFileSystem, Material, NodePath from direct.stdpy.file import walk import simplepbr @@ -22,7 +22,14 @@ def get_icons(): "page_red": tk.PhotoImage(file='icons/page_red.png'), 'shape_square': tk.PhotoImage(file='icons/shape_square.png'), 'color_wheel': tk.PhotoImage(file='icons/color_wheel.png'), - 'color_swatch': tk.PhotoImage(file='icons/color_swatch.png') + 'color_swatch': tk.PhotoImage(file='icons/color_swatch.png'), + 'link': tk.PhotoImage(file='icons/link.png'), + 'sound': tk.PhotoImage(file='icons/sound.png'), + 'chart_organisation': tk.PhotoImage(file='icons/chart_organisation.png'), + 'anchor': tk.PhotoImage(file='icons/anchor.png'), + 'shape_flip_horizontal': tk.PhotoImage(file='icons/shape_flip_horizontal.png'), + 'film': tk.PhotoImage(file='icons/film.png'), + 'user': tk.PhotoImage(file='icons/user.png') })() def add_package_contents_to_tree(tree, package, type, name, extensions, icon_folder, icon_group, icon_item): @@ -47,10 +54,14 @@ def add_package_textures_to_tree(tree, package, icons): def add_package_materials_to_tree(tree, package, icons): add_package_contents_to_tree(tree, package, 'materials/', 'Materials', ('.json'), icons.folder, icons.color_wheel, icons.color_swatch) +def add_package_sounds_to_tree(tree, package, icons): + add_package_contents_to_tree(tree, package, 'sounds/', 'Sounds', ('.ogg', '.wav'), icons.folder, icons.sound, icons.sound) + def add_package_to_tree(tree, package, icons): add_package_models_to_tree(tree, package, icons) add_package_textures_to_tree(tree, package, icons) add_package_materials_to_tree(tree, package, icons) + add_package_sounds_to_tree(tree, package, icons) def init_packages_tree(tree, packages, icons): tree.insert('', 'end', '/', text=' /', open=True, image=icons.app) @@ -65,7 +76,7 @@ def init_packages_tree(tree, packages, icons): def init_gui(app, args): app.gui.geometry("700x500") app.gui.grid_rowconfigure(0, weight=10) - app.gui.grid_rowconfigure(0, weight=1) + app.gui.grid_rowconfigure(1, weight=5) app.gui.grid_columnconfigure(0, weight=1) package_frame = tk.Frame(app.gui, padx=4, pady=4) package_frame.grid(column=0, row=0, sticky="news") @@ -108,6 +119,8 @@ class PackageExplorer: self.panda = ShowBase() self.package_manager = PackageManager(VirtualFileSystem.getGlobalPtr()) self.package_manager.set_main_package(args.main) + self.icons = get_icons() + self.prev = None if args.package: for include in args.package: self.package_manager.include_package(include) @@ -117,7 +130,21 @@ class PackageExplorer: simplepbr.init() gltf.patch_loader(self.panda.loader) init_gui(self, args) - init_packages_tree(self.tree_packages, self.package_manager, get_icons()) + init_packages_tree(self.tree_packages, self.package_manager, self.icons) + + env_root = NodePath('env_root') + env_root.reparentTo(self.panda.render) + + axis = self.panda.loader.loadModel(self.package_manager.get_model_path('axis.glb')) + axis.reparentTo(env_root) + + plane = self.panda.loader.loadModel(self.package_manager.get_model_path('debugplane.glb')) + plane.reparentTo(env_root) + + self.scene_root = NodePath('scene_root') + self.scene_root.reparentTo(self.panda.render) + + self.gui.protocol("WM_DELETE_WINDOW", self.on_tk_close) def on_tk_close(self): @@ -126,18 +153,51 @@ class PackageExplorer: def on_packagetree_doubleclick(self, event): item = self.tree_packages.selection()[0] if item.lower().endswith(('.glb', '.gltf', '.obj', '.egg')): + for child in self.scene_root.getChildren(): + child.removeNode() mat = Material() mat.setAmbient((1, 0, 0, 1)) node = self.panda.loader.loadModel(item) - node.reparentTo(self.panda.render) - node.setMaterial(mat) + node.reparentTo(self.scene_root) + node.setMaterial(mat) + self.display_scenegraph(node, item) + self.prev = node + + def display_scenegraph(self, node, item): + self.tree_scene.delete(*self.tree_scene.get_children()) + self.tree_scene.insert('', 'end', '/', text=f' {item}', open=True, image=self.icons.shape_square) + self.add_scene_nodes(node, '/') + + def add_scene_nodes(self, node, parent): + pn = node.node() + tree_id = f'{pn.getType().getName()} {node.getName()}' + tree_name = tree_id + image = '' + match pn.getType().getName(): + case 'ModelRoot': + image = self.icons.chart_organisation + case 'PandaNode': + image = self.icons.anchor + case 'GeomNode': + image = self.icons.shape_flip_horizontal + case 'AnimBundleNode': + bundle = pn.getBundle().getName() + tree_id = f'{tree_id}_"{bundle}"' + tree_name = f'"{bundle}"' + image = self.icons.film + case 'Character': + image = self.icons.user + + self.tree_scene.insert(parent, 'end', tree_id, text=f' {tree_name}', open=True, image=image) + for child in node.getChildren(): + self.add_scene_nodes(child, tree_id) def loop(self): try: while self.running: - self.panda.taskMgr.step() self.gui.update_idletasks() self.gui.update() + self.panda.taskMgr.step() except KeyboardInterrupt: return