feat: explicit state loading error
This commit is contained in:
@ -135,6 +135,10 @@ class BlObject(BlDatablock):
|
|||||||
data_uuid,
|
data_uuid,
|
||||||
find_data_from_name(data_id),
|
find_data_from_name(data_id),
|
||||||
ignore=['images']) # TODO: use resolve_from_id
|
ignore=['images']) # TODO: use resolve_from_id
|
||||||
|
|
||||||
|
if object_data is None and data_uuid:
|
||||||
|
raise Exception(f"Fail to load object {data['name']}({self.uuid})")
|
||||||
|
|
||||||
instance = bpy.data.objects.new(object_name, object_data)
|
instance = bpy.data.objects.new(object_name, object_data)
|
||||||
instance.uuid = self.uuid
|
instance.uuid = self.uuid
|
||||||
|
|
||||||
|
@ -78,19 +78,23 @@ def initialize_session():
|
|||||||
settings = utils.get_preferences()
|
settings = utils.get_preferences()
|
||||||
runtime_settings = bpy.context.window_manager.session
|
runtime_settings = bpy.context.window_manager.session
|
||||||
|
|
||||||
logging.info("Constructing nodes")
|
|
||||||
# Step 1: Constrect nodes
|
# Step 1: Constrect nodes
|
||||||
|
logging.info("Constructing nodes")
|
||||||
for node in session._graph.list_ordered():
|
for node in session._graph.list_ordered():
|
||||||
node_ref = session.get(uuid=node)
|
node_ref = session.get(uuid=node)
|
||||||
if node_ref.state == FETCHED:
|
if node_ref and node_ref.state == FETCHED:
|
||||||
node_ref.resolve()
|
node_ref.resolve()
|
||||||
|
else:
|
||||||
logging.info("Loading nodes")
|
logging.error(f"Can't construct node {node}")
|
||||||
|
|
||||||
# Step 2: Load nodes
|
# Step 2: Load nodes
|
||||||
|
logging.info("Loading nodes")
|
||||||
for node in session._graph.list_ordered():
|
for node in session._graph.list_ordered():
|
||||||
node_ref = session.get(uuid=node)
|
node_ref = session.get(uuid=node)
|
||||||
if node_ref.state == FETCHED:
|
if node_ref and node_ref.state == FETCHED:
|
||||||
node_ref.apply()
|
node_ref.apply()
|
||||||
|
else:
|
||||||
|
logging.error(f"Can't load node {node}")
|
||||||
|
|
||||||
logging.info("Registering timers")
|
logging.info("Registering timers")
|
||||||
# Step 4: Register blender timers
|
# Step 4: Register blender timers
|
||||||
|
Reference in New Issue
Block a user