updating integrate_render_frames - adding render.frames, still.frames, prerender.frames

This commit is contained in:
Jakub Jezek 2018-12-10 10:06:56 +01:00
parent 26e78337db
commit e5daf2162a
4 changed files with 40 additions and 32 deletions

View file

@ -53,7 +53,7 @@ class NukeHandler(api.Logger.logging.Handler):
msg = self.format(record)
if record.levelname.lower() in [
"warning",
# "warning",
"critical",
"fatal",
"error"
@ -67,7 +67,7 @@ if nuke_handler.get_name() \
not in [handler.get_name()
for handler in api.Logger.logging.root.handlers[:]]:
api.Logger.logging.getLogger().addHandler(nuke_handler)
api.Logger.logging.getLogger().setLevel(api.Logger.logging.DEBUG)
api.Logger.logging.getLogger().setLevel(api.Logger.logging.INFO)
if not self.nLogger:
self.nLogger = api.Logger
@ -114,12 +114,7 @@ def install():
# Disable all families except for the ones we explicitly want to see
family_states = [
"write",
"lifeGroup",
"backdrop",
"imagesequence",
"mov"
"camera",
"pointcache",
"review"
]
avalon.data["familiesStateDefault"] = False

View file

@ -13,6 +13,7 @@ class IntegrateFtrackInstance(pyblish.api.InstancePlugin):
order = pyblish.api.IntegratorOrder + 0.48
label = 'Integrate Ftrack Component'
families = ["render.frames", "still.frames"]
family_mapping = {'camera': 'cam',
'look': 'look',
@ -23,7 +24,8 @@ class IntegrateFtrackInstance(pyblish.api.InstancePlugin):
'pointcache': 'cache',
'review': 'mov',
'write': 'img',
'render': 'render'}
'render': 'render'
}
def process(self, instance):

View file

@ -58,19 +58,29 @@ class CollectNukeWrites(pyblish.api.ContextPlugin):
# preredered frames
if not node["render"].value():
families = "prerendered.frames"
collected_frames = os.listdir(output_dir)
self.log.debug("collected_frames: {}".format(label))
if "files" not in instance.data:
instance.data["files"] = list()
instance.data["files"].append(collected_frames)
instance.data['transfer'] = False
try:
families = [
"{}.frames".format(instance.data["avalonKnob"]["families"]),
'ftrack'
]
collected_frames = os.listdir(output_dir)
self.log.debug("collected_frames: {}".format(label))
if "files" not in instance.data:
instance.data["files"] = list()
instance.data["files"].append(collected_frames)
instance.data['transfer'] = False
except Exception:
node["render"].setValue(True)
raise self.log.warning("needs to refresh the publishing")
else:
# dealing with local/farm rendering
if node["render_farm"].value():
families = "{}.farm".format(instance.data["avalonKnob"]["families"][0])
families = [
"{}.farm".format(instance.data["avalonKnob"]["families"])]
else:
families = "{}.local".format(instance.data["avalonKnob"]["families"])
families = [
"{}.local".format(instance.data["avalonKnob"]["families"])
]
self.log.debug("checking for error: {}".format(label))
instance.data.update({
@ -78,7 +88,7 @@ class CollectNukeWrites(pyblish.api.ContextPlugin):
"outputDir": output_dir,
"ext": ext,
"label": label,
"families": [families, 'ftrack'],
"families": families,
"startFrame": first_frame,
"endFrame": last_frame,
"outputType": output_type,

View file

@ -24,7 +24,7 @@ class IntegrateFrames(pyblish.api.InstancePlugin):
label = "Integrate Frames"
order = pyblish.api.IntegratorOrder
families = ["prerendered.frames"]
families = ["render.frames", "still.frames", "prerender.frames"]
def process(self, instance):
@ -211,7 +211,6 @@ class IntegrateFrames(pyblish.api.InstancePlugin):
template = anatomy.render.path
instance.data["transfers"].append([src, dst])
representation = {
"schema": "pype:representation-2.0",
"type": "representation",
@ -223,21 +222,23 @@ class IntegrateFrames(pyblish.api.InstancePlugin):
# Imprint shortcut to context
# for performance reasons.
"context": {
"root": root,
"project": PROJECT,
"projectcode": project['data']['code'],
'task': api.Session["AVALON_TASK"],
"silo": asset['silo'],
"asset": ASSET,
"family": instance.data['family'],
"subset": subset["name"],
"version": version["name"],
"hierarchy": hierarchy,
"representation": ext[1:]
"root": root,
"project": PROJECT,
"projectcode": project['data']['code'],
'task': api.Session["AVALON_TASK"],
"silo": asset['silo'],
"asset": ASSET,
"family": instance.data['family'],
"subset": subset["name"],
"version": version["name"],
"hierarchy": hierarchy,
"representation": ext[1:]
}
}
destination_list.append(dst)
instance.data['destination_list'] = destination_list
self.log.warning("instance: {}".format(instance))
instance[0]["render"].setValue(False)
representations.append(representation)
self.log.info("Registering {} items".format(len(representations)))