From 213b0b5ff5d19468bf458915a6c78a406c97d619 Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Tue, 31 Oct 2017 16:28:33 +0100 Subject: Add option to control FBX 'empty' type through a string custom property in Blender's empty. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Based on https://developer.blender.org/D2279 by Pavel Křupala (@pavelkrupala), thanks. Conflicts: io_scene_fbx/__init__.py --- io_scene_fbx/export_fbx_bin.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/io_scene_fbx/export_fbx_bin.py b/io_scene_fbx/export_fbx_bin.py index 6c60a165..10f0e535 100644 --- a/io_scene_fbx/export_fbx_bin.py +++ b/io_scene_fbx/export_fbx_bin.py @@ -553,13 +553,14 @@ def fbx_data_element_custom_properties(props, bid): def fbx_data_empty_elements(root, empty, scene_data): """ - Write the Empty data block. + Write the Empty data block (you can control its FBX datatype with the 'fbx_type' string custom property). """ empty_key = scene_data.data_empties[empty] null = elem_data_single_int64(root, b"NodeAttribute", get_fbx_uuid_from_key(empty_key)) null.add_string(fbx_name_class(empty.name.encode(), b"NodeAttribute")) - null.add_string(b"Null") + val = empty.bdata.get('fbx_type', None) + null.add_string(val.encode() if val and isinstance(val, str) else b"Null") elem_data_single_string(null, b"TypeFlags", b"Null") -- cgit v1.2.3