Skip to content
This repository has been archived by the owner on Sep 20, 2024. It is now read-only.

Commit

Permalink
Merge pull request #1201 from pypeclub/3.0/feature/1100-nuke-read-con…
Browse files Browse the repository at this point in the history
…tainer-simplify-labeling

Nuke: adding preset for a Read node name to all img and mov Loaders
  • Loading branch information
mkolar authored Mar 31, 2021
2 parents fb790c7 + 0d0dd26 commit b1492cf
Show file tree
Hide file tree
Showing 5 changed files with 98 additions and 38 deletions.
22 changes: 13 additions & 9 deletions pype/hosts/nuke/plugins/load/load_image.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,16 @@
class LoadImage(api.Loader):
"""Load still image into Nuke"""

families = [
"render2d", "source", "plate",
"render", "prerender", "review",
"image"
]
families = ["render", "source", "plate", "review", "image"]
representations = ["exr", "dpx", "jpg", "jpeg", "png", "psd"]

label = "Load Image"
order = -10
icon = "image"
color = "white"

node_name_template = "{class_name}_{ext}"

options = [
qargparse.Integer(
"frame_number",
Expand Down Expand Up @@ -75,10 +73,16 @@ def load(self, context, name, namespace, options):
frame,
format(frame_number, "0{}".format(padding)))

read_name = "Read_{0}_{1}_{2}".format(
repr_cont["asset"],
repr_cont["subset"],
repr_cont["representation"])
name_data = {
"asset": repr_cont["asset"],
"subset": repr_cont["subset"],
"representation": context["representation"]["name"],
"ext": repr_cont["representation"],
"id": context["representation"]["_id"],
"class_name": self.__class__.__name__
}

read_name = self.node_name_template.format(**name_data)

# Create the Loader with the filename path set
with viewer_update_and_undo_stop():
Expand Down
31 changes: 14 additions & 17 deletions pype/hosts/nuke/plugins/load/load_mov.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,19 +69,8 @@ def add_review_presets_config():

class LoadMov(api.Loader):
"""Load mov file into Nuke"""
presets = add_review_presets_config()
families = [
"source",
"plate",
"render",
"prerender",
"review"] + presets["families"]

representations = [
"mov",
"preview",
"review",
"mp4"] + presets["representations"]
families = ["render", "source", "plate", "review"]
representations = ["mov", "review", "mp4"]

label = "Load mov"
order = -10
Expand All @@ -90,6 +79,8 @@ class LoadMov(api.Loader):

script_start = nuke.root()["first_frame"].value()

node_name_template = "{class_name}_{ext}"

def load(self, context, name, namespace, data):
from avalon.nuke import (
containerise,
Expand Down Expand Up @@ -133,10 +124,16 @@ def load(self, context, name, namespace, data):

file = file.replace("\\", "/")

read_name = "Read_{0}_{1}_{2}".format(
repr_cont["asset"],
repr_cont["subset"],
repr_cont["representation"])
name_data = {
"asset": repr_cont["asset"],
"subset": repr_cont["subset"],
"representation": context["representation"]["name"],
"ext": repr_cont["representation"],
"id": context["representation"]["_id"],
"class_name": self.__class__.__name__
}

read_name = self.node_name_template.format(**name_data)

# Create the Loader with the filename path set
with viewer_update_and_undo_stop():
Expand Down
20 changes: 14 additions & 6 deletions pype/hosts/nuke/plugins/load/load_sequence.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,14 +72,16 @@ def loader_shift(node, frame, relative=False):
class LoadSequence(api.Loader):
"""Load image sequence into Nuke"""

families = ["render2d", "source", "plate", "render", "prerender", "review"]
representations = ["exr", "dpx", "jpg", "jpeg", "png"]
families = ["render", "source", "plate", "review"]
representations = ["exr", "dpx"]

label = "Load Image Sequence"
order = -20
icon = "file-video-o"
color = "white"

node_name_template = "{class_name}_{ext}"

def load(self, context, name, namespace, data):
from avalon.nuke import (
containerise,
Expand Down Expand Up @@ -125,10 +127,16 @@ def load(self, context, name, namespace, data):
padding = len(frame)
file = file.replace(frame, "#" * padding)

read_name = "Read_{0}_{1}_{2}".format(
repr_cont["asset"],
repr_cont["subset"],
context["representation"]["name"])
name_data = {
"asset": repr_cont["asset"],
"subset": repr_cont["subset"],
"representation": context["representation"]["name"],
"ext": repr_cont["representation"],
"id": context["representation"]["_id"],
"class_name": self.__class__.__name__
}

read_name = self.node_name_template.format(**name_data)

# Create the Loader with the filename path set
with viewer_update_and_undo_stop():
Expand Down
52 changes: 46 additions & 6 deletions pype/settings/defaults/project_settings/nuke.json
Original file line number Diff line number Diff line change
Expand Up @@ -95,20 +95,60 @@
"load": {
"LoadImage": {
"enabled": true,
"representations": []
"families": [
"render2d",
"source",
"plate",
"render",
"prerender",
"review",
"image"
],
"representations": [
"exr",
"dpx",
"jpg",
"jpeg",
"png",
"psd"
],
"node_name_template": "{class_name}_{ext}"
},
"LoadMov": {
"enabled": true,
"representations": []
"families": [
"source",
"plate",
"render",
"prerender",
"review"
],
"representations": [
"mov",
"review",
"mp4",
"h264"
],
"node_name_template": "{class_name}_{ext}"
},
"LoadSequence": {
"enabled": true,
"families": [
"render2d",
"source",
"plate",
"render",
"prerender",
"review"
],
"representations": [
"png",
"jpg",
"exr",
""
]
"dpx",
"jpg",
"jpeg",
"png"
],
"node_name_template": "{class_name}_{ext}"
}
},
"workfile_build": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,22 @@
"key": "enabled",
"label": "Enabled"
},
{
"type": "list",
"key": "families",
"label": "Families",
"object_type": "text"
},
{
"type": "list",
"key": "representations",
"label": "Representations",
"object_type": "text"
},
{
"type": "text",
"key": "node_name_template",
"label": "Node name template"
}
]
}
Expand Down

0 comments on commit b1492cf

Please sign in to comment.