Pyblish integration for The Foundry NukeAssist.
A set of common plug-ins and functions shared across other integrations - such as getting the current working file. It also visually integrates Pyblish into the File-menu for easy access.
- Common plug-ins
- Common functionality
- File-menu shortcut
pyblish-nukeassist depends on pyblish-base and is available via PyPI.
Ensure Pyblish for NukeAssist is on your PYTHONPATH
and run this within NukeAssist.
import pyblish_nukeassist
pyblish_nukeassist.setup()
You may also want to consider a graphical user interface, such as pyblish-qml or pyblish-lite.
You can then show the Pyblish graphical user interface by calling show()
.
pyblish_nukeassist.show()
It is recommended that you allow Pyblish to load upon launching NukeAssist. For this, you have two options.
- Add the following snippet to your
.nuke/menu.py
in your home directory:
# 1. Register your favourite GUI
import pyblish.api
pyblish.api.register_gui("pyblish_lite")
# 2. Set-up Pyblish for NukeAssist
import pyblish_nukeassist
pyblish_nukeassist.setup()
- Add the
pyblish_nukeassist/nuke_path
directory to yourNUKE_PATH
environment variable
As you will find, this directory contains a menu.py
with the same command. Nuke will run this upon startup, along with any other menu.py
available.
The setup()
command will:
- Register Nuke related "hosts", allowing plug-ins to be filtered accordingly.
- Register a minimal set of plug-ins that are common across all integrations.
The menu-button is set to run show()
, which you may also manually call yourself, such as from a shelf-button.
import pyblish_nukeassist
pyblish_nukeassist.show()
Should you not want a menu-item, pass menu=False
.
import pyblish_nukeassist
pyblish_nukeassist.show(menu=False)
Should you want to dock the pyblish UI, there is a convenience function to help.
import pyblish_nukeassist
window = pyblish_nukeassist.show()
pyblish_nukeassist.dock(window)
To get rid of the menu, and completely remove any trace of pyblish-nukeassist from your Nuke session, run teardown()
.
import pyblish_nukeassist
pyblish_nukeassist.teardown()
This will do the opposite of setup()
and clean things up for you.
In the event that no GUI is registered upon running setup()
, the button will provide the user with this information on how they can get up and running on their own.
You can customize the integration with these environment variables:
Environment Variable | Description | Examples |
---|---|---|
PYBLISH_HOTKEY |
Hotkey for executing File > Publish . The hotkey is not case-sensitive. You can read more about it here. |
ctrl+p , Ctrl+Alt+P , CTRL+SHIFT+P |