From 0b92b2315f531dac1402b9d9e55971528bbff1d1 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Wed, 21 Aug 2019 16:30:23 +0200 Subject: [PATCH] fix(nk): animation on separate channels was not accepted --- pype/plugins/nuke/load/load_luts.py | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/pype/plugins/nuke/load/load_luts.py b/pype/plugins/nuke/load/load_luts.py index e86eaf9762..d1c6c71057 100644 --- a/pype/plugins/nuke/load/load_luts.py +++ b/pype/plugins/nuke/load/load_luts.py @@ -83,12 +83,19 @@ class LoadLuts(api.Loader): for ef_name, ef_val in nodes_order.items(): node = nuke.createNode(ef_val["class"]) for k, v in ef_val["node"].items(): - if isinstance(v, list) and len(v) > 3: + if isinstance(v, list) and len(v) > 4: node[k].setAnimated() for i, value in enumerate(v): - node[k].setValueAt( - value, - (workfile_first_frame + i)) + if isinstance(value, list): + for ci, cv in enumerate(value): + node[k].setValueAt( + cv, + (workfile_first_frame + i), + ci) + else: + node[k].setValueAt( + value, + (workfile_first_frame + i)) else: node[k].setValue(v) node.setInput(0, pre_node) @@ -190,9 +197,16 @@ class LoadLuts(api.Loader): if isinstance(v, list) and len(v) > 3: node[k].setAnimated() for i, value in enumerate(v): - node[k].setValueAt( - value, - (workfile_first_frame + i)) + if isinstance(value, list): + for ci, cv in enumerate(value): + node[k].setValueAt( + cv, + (workfile_first_frame + i), + ci) + else: + node[k].setValueAt( + value, + (workfile_first_frame + i)) else: node[k].setValue(v) node.setInput(0, pre_node)