From 7c055f22ede6c1f7339918a91c6f4efee55ac414 Mon Sep 17 00:00:00 2001 From: Dennis1000 Date: Thu, 13 Jun 2019 13:27:50 +0200 Subject: [PATCH] Adds custom properties for materials and geometries Closes #77 --- io_scene_dae/export_dae.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/io_scene_dae/export_dae.py b/io_scene_dae/export_dae.py index 29d3bfc..05b8920 100644 --- a/io_scene_dae/export_dae.py +++ b/io_scene_dae/export_dae.py @@ -376,6 +376,19 @@ def export_material(self, material, double_sided_hint=True): self.writel(S_MATS, 1, "".format( matid, material.name)) self.writel(S_MATS, 2, "".format(fxid)) + + # Export custom properties + if len(material.keys()) > 1: + self.writel(S_MATS, 2, "") + self.writel(S_MATS, 3, "") + self.writel(S_MATS, 4, "") + for K in material.keys(): + if K not in '_RNA_UI': + self.writel(S_MATS, 5, "{}".format(K, material[K]) + "") + self.writel(S_MATS, 4, "") + self.writel(S_MATS, 3, "") + self.writel(S_MATS, 2, "") + self.writel(S_MATS, 1, "") self.material_cache[material] = matid @@ -676,6 +689,19 @@ def export_mesh(self, node, armature=None, skeyindex=-1, skel_source=None, S_GEOM, 1, "".format( meshid, name_to_use)) + + # Export custom properties + if len(node.keys()) > 1: + self.writel(S_GEOM, 2, "") + self.writel(S_GEOM, 3, "") + self.writel(S_GEOM, 4, "") + for K in node.keys(): + if K not in '_RNA_UI': + self.writel(S_GEOM, 5, "{}".format(K, node[K]) + "") + self.writel(S_GEOM, 4, "") + self.writel(S_GEOM, 3, "") + self.writel(S_GEOM, 2, "") + self.writel(S_GEOM, 2, "") # Vertex Array