mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
fix(nuke): loading Anatomy and Colorspace, Dataflow with pype2 way
This commit is contained in:
parent
376ec3dedf
commit
c0742cffaf
2 changed files with 26 additions and 21 deletions
|
|
@ -58,7 +58,8 @@ def writes_version_sync():
|
|||
node_new_file = node_file.replace(node_version, new_version)
|
||||
each['file'].setValue(node_new_file)
|
||||
except Exception as e:
|
||||
log.debug("Write node: `{}` has no version in path: {}".format(each.name(), e))
|
||||
log.debug(
|
||||
"Write node: `{}` has no version in path: {}".format(each.name(), e))
|
||||
|
||||
|
||||
def version_up_script():
|
||||
|
|
@ -74,7 +75,7 @@ def get_render_path(node):
|
|||
data_preset = {
|
||||
"class": data['avalon']['family'],
|
||||
"preset": data['avalon']['families']
|
||||
}
|
||||
}
|
||||
|
||||
nuke_dataflow_writes = get_dataflow(**data_preset)
|
||||
nuke_colorspace_writes = get_colorspace(**data_preset)
|
||||
|
|
@ -87,7 +88,8 @@ def get_render_path(node):
|
|||
})
|
||||
|
||||
anatomy_filled = format_anatomy(data)
|
||||
return anatomy_filled.render.path.replace("\\", "/")
|
||||
return anatomy_filled["render"]["path"].replace("\\", "/")
|
||||
|
||||
|
||||
def format_anatomy(data):
|
||||
from .templates import (
|
||||
|
|
@ -95,28 +97,29 @@ def format_anatomy(data):
|
|||
)
|
||||
|
||||
anatomy = get_anatomy()
|
||||
|
||||
log.info("__ anatomy.templates: {}".format(anatomy.templates))
|
||||
# TODO: perhaps should be in try!
|
||||
padding = anatomy.render.padding
|
||||
padding = int(anatomy.templates['render']['padding'])
|
||||
version = data.get("version", None)
|
||||
if not version:
|
||||
file = script_name()
|
||||
data["version"] = pype.get_version_from_path(file)
|
||||
|
||||
data.update({
|
||||
"root": api.Session["AVALON_PROJECTS"],
|
||||
"subset": data["avalon"]["subset"],
|
||||
"asset": data["avalon"]["asset"],
|
||||
"task": str(pype.get_task()).lower(),
|
||||
"family": data["avalon"]["family"],
|
||||
"project": {"name": pype.get_project_name(),
|
||||
"code": pype.get_project_code()},
|
||||
"representation": data["nuke_dataflow_writes"].file_type,
|
||||
"representation": data["nuke_dataflow_writes"]["file_type"],
|
||||
"app": data["application"]["application_dir"],
|
||||
"hierarchy": pype.get_hierarchy(),
|
||||
"frame": "#" * padding,
|
||||
})
|
||||
|
||||
# log.info("format_anatomy:anatomy: {}".format(anatomy))
|
||||
log.info("__ data: {}".format(data))
|
||||
log.info("__ format_anatomy: {}".format(anatomy.format(data)))
|
||||
return anatomy.format(data)
|
||||
|
||||
|
||||
|
|
@ -141,10 +144,8 @@ def create_write_node(name, data):
|
|||
except Exception as e:
|
||||
log.error("problem with resolving anatomy tepmlate: {}".format(e))
|
||||
|
||||
log.debug("anatomy_filled.render: {}".format(anatomy_filled.render))
|
||||
|
||||
_data = OrderedDict({
|
||||
"file": str(anatomy_filled.render.path).replace("\\", "/")
|
||||
"file": str(anatomy_filled["render"]["path"]).replace("\\", "/")
|
||||
})
|
||||
|
||||
# adding dataflow template
|
||||
|
|
@ -161,7 +162,7 @@ def create_write_node(name, data):
|
|||
log.debug(_data)
|
||||
|
||||
_data["frame_range"] = data.get("frame_range", None)
|
||||
|
||||
log.info("__ _data3: {}".format(_data))
|
||||
instance = avalon.nuke.lib.add_write_node(
|
||||
name,
|
||||
**_data
|
||||
|
|
@ -170,6 +171,7 @@ def create_write_node(name, data):
|
|||
add_rendering_knobs(instance)
|
||||
return instance
|
||||
|
||||
|
||||
def add_rendering_knobs(node):
|
||||
if "render" not in node.knobs():
|
||||
knob = nuke.Boolean_Knob("render", "Render")
|
||||
|
|
@ -232,7 +234,8 @@ def set_root_colorspace(root_dict):
|
|||
|
||||
# first set OCIO
|
||||
if nuke.root()["colorManagement"].value() not in str(root_dict["colorManagement"]):
|
||||
nuke.root()["colorManagement"].setValue(str(root_dict["colorManagement"]))
|
||||
nuke.root()["colorManagement"].setValue(
|
||||
str(root_dict["colorManagement"]))
|
||||
|
||||
# second set ocio version
|
||||
if nuke.root()["OCIO_config"].value() not in str(root_dict["OCIO_config"]):
|
||||
|
|
@ -332,7 +335,7 @@ def reset_resolution():
|
|||
check_format = used_formats[-1]
|
||||
format_name = "{}_{}".format(
|
||||
project["name"],
|
||||
int(used_formats[-1].name()[-1])+1
|
||||
int(used_formats[-1].name()[-1]) + 1
|
||||
)
|
||||
log.info(
|
||||
"Format exists: {}. "
|
||||
|
|
@ -458,7 +461,7 @@ def get_write_node_template_attr(node):
|
|||
data_preset = {
|
||||
"class": data['avalon']['family'],
|
||||
"preset": data['avalon']['families']
|
||||
}
|
||||
}
|
||||
|
||||
# get template data
|
||||
nuke_dataflow_writes = get_dataflow(**data_preset)
|
||||
|
|
|
|||
|
|
@ -15,10 +15,12 @@ def get_dataflow(**kwarg):
|
|||
assert any([host, cls]), log.error("nuke.templates.get_dataflow():"
|
||||
"Missing mandatory kwargs `host`, `cls`")
|
||||
|
||||
nuke_dataflow = getattr(pype.Dataflow, str(host), None)
|
||||
nuke_dataflow_node = getattr(nuke_dataflow.nodes, str(cls), None)
|
||||
nuke_dataflow = pype.Dataflow.get(str(host), None)
|
||||
nuke_dataflow_nodes = nuke_dataflow.get('nodes', None)
|
||||
nuke_dataflow_node = nuke_dataflow_nodes.get(str(cls), None)
|
||||
|
||||
if preset:
|
||||
nuke_dataflow_node = getattr(nuke_dataflow_node, str(preset), None)
|
||||
nuke_dataflow_node = nuke_dataflow_node.get(str(preset), None)
|
||||
|
||||
log.info("Dataflow: {}".format(nuke_dataflow_node))
|
||||
return nuke_dataflow_node
|
||||
|
|
@ -32,10 +34,10 @@ def get_colorspace(**kwarg):
|
|||
assert any([host, cls]), log.error("nuke.templates.get_colorspace():"
|
||||
"Missing mandatory kwargs `host`, `cls`")
|
||||
|
||||
nuke_colorspace = getattr(pype.Colorspace, str(host), None)
|
||||
nuke_colorspace_node = getattr(nuke_colorspace, str(cls), None)
|
||||
nuke_colorspace = pype.Colorspace.get(str(host), None)
|
||||
nuke_colorspace_node = nuke_colorspace.get(str(cls), None)
|
||||
if preset:
|
||||
nuke_colorspace_node = getattr(nuke_colorspace_node, str(preset), None)
|
||||
nuke_colorspace_node = nuke_colorspace_node.get(str(preset), None)
|
||||
|
||||
log.info("Colorspace: {}".format(nuke_colorspace_node))
|
||||
return nuke_colorspace_node
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue