mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-01 16:34:53 +01:00
Merge branch 'develop' into feature/OP-3207_Nuke-multiple-baking-streams-with-correct-slate
This commit is contained in:
commit
308289aa64
415 changed files with 90306 additions and 1468 deletions
|
|
@ -31,6 +31,8 @@ from openpype.pipeline import (
|
|||
legacy_io,
|
||||
)
|
||||
|
||||
from . import gizmo_menu
|
||||
|
||||
from .workio import (
|
||||
save_file,
|
||||
open_file
|
||||
|
|
@ -374,7 +376,7 @@ def add_write_node_legacy(name, **kwarg):
|
|||
Returns:
|
||||
node (obj): nuke write node
|
||||
"""
|
||||
frame_range = kwarg.get("use_range_limit", None)
|
||||
use_range_limit = kwarg.get("use_range_limit", None)
|
||||
|
||||
w = nuke.createNode(
|
||||
"Write",
|
||||
|
|
@ -392,10 +394,10 @@ def add_write_node_legacy(name, **kwarg):
|
|||
log.debug(e)
|
||||
continue
|
||||
|
||||
if frame_range:
|
||||
if use_range_limit:
|
||||
w["use_limit"].setValue(True)
|
||||
w["first"].setValue(frame_range[0])
|
||||
w["last"].setValue(frame_range[1])
|
||||
w["first"].setValue(kwarg["frame_range"][0])
|
||||
w["last"].setValue(kwarg["frame_range"][1])
|
||||
|
||||
return w
|
||||
|
||||
|
|
@ -410,7 +412,7 @@ def add_write_node(name, file_path, knobs, **kwarg):
|
|||
Returns:
|
||||
node (obj): nuke write node
|
||||
"""
|
||||
frame_range = kwarg.get("use_range_limit", None)
|
||||
use_range_limit = kwarg.get("use_range_limit", None)
|
||||
|
||||
w = nuke.createNode(
|
||||
"Write",
|
||||
|
|
@ -421,10 +423,10 @@ def add_write_node(name, file_path, knobs, **kwarg):
|
|||
# finally add knob overrides
|
||||
set_node_knobs_from_settings(w, knobs, **kwarg)
|
||||
|
||||
if frame_range:
|
||||
if use_range_limit:
|
||||
w["use_limit"].setValue(True)
|
||||
w["first"].setValue(frame_range[0])
|
||||
w["last"].setValue(frame_range[1])
|
||||
w["first"].setValue(kwarg["frame_range"][0])
|
||||
w["last"].setValue(kwarg["frame_range"][1])
|
||||
|
||||
return w
|
||||
|
||||
|
|
@ -2512,6 +2514,70 @@ def recreate_instance(origin_node, avalon_data=None):
|
|||
return new_node
|
||||
|
||||
|
||||
def add_scripts_gizmo():
|
||||
|
||||
# load configuration of custom menu
|
||||
project_settings = get_project_settings(os.getenv("AVALON_PROJECT"))
|
||||
platform_name = platform.system().lower()
|
||||
|
||||
for gizmo_settings in project_settings["nuke"]["gizmo"]:
|
||||
gizmo_list_definition = gizmo_settings["gizmo_definition"]
|
||||
toolbar_name = gizmo_settings["toolbar_menu_name"]
|
||||
# gizmo_toolbar_path = gizmo_settings["gizmo_toolbar_path"]
|
||||
gizmo_source_dir = gizmo_settings.get(
|
||||
"gizmo_source_dir", {}).get(platform_name)
|
||||
toolbar_icon_path = gizmo_settings.get(
|
||||
"toolbar_icon_path", {}).get(platform_name)
|
||||
|
||||
if not gizmo_source_dir:
|
||||
log.debug("Skipping studio gizmo `{}`, "
|
||||
"no gizmo path found.".format(toolbar_name)
|
||||
)
|
||||
return
|
||||
|
||||
if not gizmo_list_definition:
|
||||
log.debug("Skipping studio gizmo `{}`, "
|
||||
"no definition found.".format(toolbar_name)
|
||||
)
|
||||
return
|
||||
|
||||
if toolbar_icon_path:
|
||||
try:
|
||||
toolbar_icon_path = toolbar_icon_path.format(**os.environ)
|
||||
except KeyError as e:
|
||||
log.error(
|
||||
"This environment variable doesn't exist: {}".format(e)
|
||||
)
|
||||
|
||||
existing_gizmo_path = []
|
||||
for source_dir in gizmo_source_dir:
|
||||
try:
|
||||
resolve_source_dir = source_dir.format(**os.environ)
|
||||
except KeyError as e:
|
||||
log.error(
|
||||
"This environment variable doesn't exist: {}".format(e)
|
||||
)
|
||||
continue
|
||||
if not os.path.exists(resolve_source_dir):
|
||||
log.warning(
|
||||
"The source of gizmo `{}` does not exists".format(
|
||||
resolve_source_dir
|
||||
)
|
||||
)
|
||||
continue
|
||||
existing_gizmo_path.append(resolve_source_dir)
|
||||
|
||||
# run the launcher for Nuke toolbar
|
||||
toolbar_menu = gizmo_menu.GizmoMenu(
|
||||
title=toolbar_name,
|
||||
icon=toolbar_icon_path
|
||||
)
|
||||
|
||||
# apply configuration
|
||||
toolbar_menu.add_gizmo_path(existing_gizmo_path)
|
||||
toolbar_menu.build_from_configuration(gizmo_list_definition)
|
||||
|
||||
|
||||
class NukeDirmap(HostDirmap):
|
||||
def __init__(self, host_name, project_settings, sync_module, file_name):
|
||||
"""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue