├── Prism ├── Scripts │ ├── PrismUtils │ │ └── __init__.py │ ├── UserInterfacesPrism │ │ ├── __init__.py │ │ ├── stylesheets │ │ │ ├── __init__.py │ │ │ ├── blue_moon │ │ │ │ ├── stylesheet.json │ │ │ │ └── images │ │ │ │ │ ├── more_dark.png │ │ │ │ │ ├── branch_end.png │ │ │ │ │ ├── branch_more.png │ │ │ │ │ ├── branch_open.png │ │ │ │ │ ├── branch_vline.png │ │ │ │ │ ├── close_dark.png │ │ │ │ │ ├── close_light.png │ │ │ │ │ ├── more_light.png │ │ │ │ │ ├── transparent.png │ │ │ │ │ ├── undock_dark.png │ │ │ │ │ ├── undock_light.png │ │ │ │ │ ├── branch_closed.png │ │ │ │ │ ├── branch_open-on.png │ │ │ │ │ ├── checkbox_light.png │ │ │ │ │ ├── sizegrip_dark.png │ │ │ │ │ ├── sizegrip_light.png │ │ │ │ │ ├── up_arrow_dark.png │ │ │ │ │ ├── up_arrow_light.png │ │ │ │ │ ├── vertical_line.png │ │ │ │ │ ├── Hmovetoolbar_dark.png │ │ │ │ │ ├── Vmovetoolbar_dark.png │ │ │ │ │ ├── branch_closed-on.png │ │ │ │ │ ├── branch_open_dark.png │ │ │ │ │ ├── checkbox_disabled.png │ │ │ │ │ ├── down_arrow_dark.png │ │ │ │ │ ├── down_arrow_darker.png │ │ │ │ │ ├── down_arrow_light.png │ │ │ │ │ ├── horizontal_line.png │ │ │ │ │ ├── left_arrow_dark.png │ │ │ │ │ ├── left_arrow_darker.png │ │ │ │ │ ├── left_arrow_light.png │ │ │ │ │ ├── radiobutton_light.png │ │ │ │ │ ├── right_arrow_dark.png │ │ │ │ │ ├── right_arrow_light.png │ │ │ │ │ ├── up_arrow_darker.png │ │ │ │ │ ├── up_arrow_lighter.png │ │ │ │ │ ├── Hmovetoolbar_light.png │ │ │ │ │ ├── Hsepartoolbar_dark.png │ │ │ │ │ ├── Hsepartoolbar_light.png │ │ │ │ │ ├── Vmovetoolbar_light.png │ │ │ │ │ ├── Vsepartoolbar_dark.png │ │ │ │ │ ├── Vsepartoolbar_light.png │ │ │ │ │ ├── background_freecad.png │ │ │ │ │ ├── branch_closed_dark.png │ │ │ │ │ ├── branch_open_darker.png │ │ │ │ │ ├── down_arrow_lighter.png │ │ │ │ │ ├── left_arrow_lighter.png │ │ │ │ │ ├── right_arrow_darker.png │ │ │ │ │ ├── right_arrow_lighter.png │ │ │ │ │ ├── branch_closed_darker.png │ │ │ │ │ ├── splitter_vertical_dark.png │ │ │ │ │ ├── up_arrow_disabled_dark.png │ │ │ │ │ ├── down_arrow_disabled_dark.png │ │ │ │ │ ├── left_arrow_disabled_dark.png │ │ │ │ │ ├── splitter_horizontal_dark.png │ │ │ │ │ ├── splitter_vertical_light.png │ │ │ │ │ ├── up_arrow_disabled_light.png │ │ │ │ │ ├── down_arrow_disabled_light.png │ │ │ │ │ ├── left_arrow_disabled_light.png │ │ │ │ │ ├── right_arrow_disabled_dark.png │ │ │ │ │ ├── right_arrow_disabled_light.png │ │ │ │ │ ├── splitter_horizontal_light.png │ │ │ │ │ └── checkbox_indeterminate_light.png │ │ │ └── qdarkstyle │ │ │ │ ├── stylesheet.json │ │ │ │ └── rc │ │ │ │ ├── close.png │ │ │ │ ├── undock.png │ │ │ │ ├── down_arrow.png │ │ │ │ ├── left_arrow.png │ │ │ │ ├── sizegrip.png │ │ │ │ ├── up_arrow.png │ │ │ │ ├── Hmovetoolbar.png │ │ │ │ ├── Vmovetoolbar.png │ │ │ │ ├── branch_open.png │ │ │ │ ├── close-hover.png │ │ │ │ ├── right_arrow.png │ │ │ │ ├── transparent.png │ │ │ │ ├── Hsepartoolbar.png │ │ │ │ ├── Vsepartoolbar.png │ │ │ │ ├── branch_closed.png │ │ │ │ ├── branch_open-on.png │ │ │ │ ├── close-pressed.png │ │ │ │ ├── radio_checked.png │ │ │ │ ├── radio_unchecked.png │ │ │ │ ├── branch_closed-on.png │ │ │ │ ├── checkbox_checked.png │ │ │ │ ├── stylesheet-vline.png │ │ │ │ ├── up_arrow_disabled.png │ │ │ │ ├── checkbox_unchecked.png │ │ │ │ ├── down_arrow_disabled.png │ │ │ │ ├── left_arrow_disabled.png │ │ │ │ ├── radio_checked_focus.png │ │ │ │ ├── right_arrow_disabled.png │ │ │ │ ├── checkbox_checked_focus.png │ │ │ │ ├── checkbox_indeterminate.png │ │ │ │ ├── radio_checked_disabled.png │ │ │ │ ├── radio_unchecked_focus.png │ │ │ │ ├── stylesheet-branch-end.png │ │ │ │ ├── stylesheet-branch-more.png │ │ │ │ ├── checkbox_checked_disabled.png │ │ │ │ ├── checkbox_unchecked_focus.png │ │ │ │ ├── radio_unchecked_disabled.png │ │ │ │ ├── checkbox_unchecked_disabled.png │ │ │ │ ├── checkbox_indeterminate_focus.png │ │ │ │ └── checkbox_indeterminate_disabled.png │ │ ├── add.png │ │ ├── asset.png │ │ ├── book.png │ │ ├── browse.png │ │ ├── check.png │ │ ├── copy.png │ │ ├── create.png │ │ ├── date.png │ │ ├── delete.png │ │ ├── edit.png │ │ ├── export.png │ │ ├── first.png │ │ ├── folder.png │ │ ├── global.png │ │ ├── help.png │ │ ├── import.png │ │ ├── info.png │ │ ├── items.png │ │ ├── last.png │ │ ├── list.png │ │ ├── local.png │ │ ├── next.png │ │ ├── p_tray.ico │ │ ├── p_tray.png │ │ ├── pause.png │ │ ├── play.png │ │ ├── prev.png │ │ ├── remove.png │ │ ├── reset.png │ │ ├── search.png │ │ ├── shot.png │ │ ├── text.png │ │ ├── user.png │ │ ├── console.png │ │ ├── discord.png │ │ ├── episode.png │ │ ├── favorite.png │ │ ├── history.png │ │ ├── loading.gif │ │ ├── open-web.png │ │ ├── project.png │ │ ├── refresh.png │ │ ├── sequence.png │ │ ├── arrow_left.png │ │ ├── arrow_right.png │ │ ├── background.png │ │ ├── configure.png │ │ ├── prismSave.png │ │ ├── prismStates.png │ │ ├── prism_title.png │ │ ├── tutorials.png │ │ ├── prismBrowser.png │ │ ├── prismSettings.png │ │ ├── down_arrow_light.png │ │ ├── left_arrow_light.png │ │ ├── prismSaveComment.png │ │ ├── translations │ │ │ └── cn.qm │ │ ├── right_arrow_light.png │ │ └── ConvertUI.py │ └── ProjectScripts │ │ ├── UserInterfaces │ │ ├── __init__.py │ │ └── ConvertUI.py │ │ └── StateManagerNodes │ │ └── StateUserInterfaces │ │ └── ConvertUI.py ├── Plugins │ ├── Apps │ │ ├── Houdini │ │ │ ├── Integration │ │ │ │ ├── jump.pref │ │ │ │ ├── config │ │ │ │ │ └── Icons │ │ │ │ │ │ ├── p_tray.png │ │ │ │ │ │ ├── prismSave.png │ │ │ │ │ │ ├── prismBrowser.png │ │ │ │ │ │ ├── prismSettings.png │ │ │ │ │ │ ├── prismStates.png │ │ │ │ │ │ └── prismSaveComment.png │ │ │ │ ├── otls │ │ │ │ │ ├── prism_Filecache.hda │ │ │ │ │ └── prism_ImportFile.hda │ │ │ │ ├── scripts │ │ │ │ │ └── externaldragdrop.py │ │ │ │ ├── Prism.json │ │ │ │ ├── python3.10libs │ │ │ │ │ ├── pythonrc.py │ │ │ │ │ └── PrismInit.py │ │ │ │ ├── python3.11libs │ │ │ │ │ └── pythonrc.py │ │ │ │ ├── python3.7libs │ │ │ │ │ ├── pythonrc.py │ │ │ │ │ └── PrismInit.py │ │ │ │ ├── python3.9libs │ │ │ │ │ ├── pythonrc.py │ │ │ │ │ └── PrismInit.py │ │ │ │ ├── OPmenu.xml │ │ │ │ └── MainMenuCommon.xml │ │ │ ├── UserInterfaces │ │ │ │ └── houdini.ico │ │ │ └── Scripts │ │ │ │ └── StateManagerNodes │ │ │ │ └── StateUserInterfaces │ │ │ │ └── ConvertUI.py │ │ ├── AfterEffects │ │ │ ├── Integration │ │ │ │ ├── prism.aep │ │ │ │ │ ├── mimetype │ │ │ │ │ ├── .debug │ │ │ │ │ ├── index.html │ │ │ │ │ ├── css │ │ │ │ │ │ └── style.css │ │ │ │ │ └── CSXS │ │ │ │ │ │ └── manifest.xml │ │ │ │ ├── prism.aep.zip │ │ │ │ ├── prism.sh │ │ │ │ └── prism.cmd │ │ │ ├── Resources │ │ │ │ └── AfterEffects.ico │ │ │ └── UserInterfaces │ │ │ │ └── AfterEffectsStyleSheet │ │ │ │ ├── stylesheet.json │ │ │ │ └── images │ │ │ │ ├── branch_end.png │ │ │ │ ├── close_dark.png │ │ │ │ ├── more_dark.png │ │ │ │ ├── more_light.png │ │ │ │ ├── branch_closed.png │ │ │ │ ├── branch_more.png │ │ │ │ ├── branch_open.png │ │ │ │ ├── branch_vline.png │ │ │ │ ├── close_light.png │ │ │ │ ├── sizegrip_dark.png │ │ │ │ ├── transparent.png │ │ │ │ ├── undock_dark.png │ │ │ │ ├── undock_light.png │ │ │ │ ├── up_arrow_dark.png │ │ │ │ ├── vertical_line.png │ │ │ │ ├── branch_open-on.png │ │ │ │ ├── checkbox_light.png │ │ │ │ ├── down_arrow_dark.png │ │ │ │ ├── horizontal_line.png │ │ │ │ ├── left_arrow_dark.png │ │ │ │ ├── sizegrip_light.png │ │ │ │ ├── up_arrow_darker.png │ │ │ │ ├── up_arrow_light.png │ │ │ │ ├── Hmovetoolbar_dark.png │ │ │ │ ├── Hmovetoolbar_light.png │ │ │ │ ├── Hsepartoolbar_dark.png │ │ │ │ ├── Vmovetoolbar_dark.png │ │ │ │ ├── Vmovetoolbar_light.png │ │ │ │ ├── Vsepartoolbar_dark.png │ │ │ │ ├── background_freecad.png │ │ │ │ ├── branch_closed-on.png │ │ │ │ ├── branch_closed_dark.png │ │ │ │ ├── branch_open_dark.png │ │ │ │ ├── branch_open_darker.png │ │ │ │ ├── down_arrow_darker.png │ │ │ │ ├── down_arrow_light.png │ │ │ │ ├── down_arrow_lighter.png │ │ │ │ ├── left_arrow_darker.png │ │ │ │ ├── left_arrow_light.png │ │ │ │ ├── left_arrow_lighter.png │ │ │ │ ├── radiobutton_light.png │ │ │ │ ├── right_arrow_dark.png │ │ │ │ ├── right_arrow_darker.png │ │ │ │ ├── right_arrow_light.png │ │ │ │ ├── up_arrow_lighter.png │ │ │ │ ├── Hsepartoolbar_light.png │ │ │ │ ├── Vsepartoolbar_light.png │ │ │ │ ├── branch_closed_darker.png │ │ │ │ ├── right_arrow_lighter.png │ │ │ │ ├── splitter_vertical_dark.png │ │ │ │ ├── splitter_vertical_light.png │ │ │ │ ├── up_arrow_disabled_dark.png │ │ │ │ ├── up_arrow_disabled_light.png │ │ │ │ ├── down_arrow_disabled_dark.png │ │ │ │ ├── down_arrow_disabled_light.png │ │ │ │ ├── left_arrow_disabled_dark.png │ │ │ │ ├── left_arrow_disabled_light.png │ │ │ │ ├── right_arrow_disabled_dark.png │ │ │ │ ├── splitter_horizontal_dark.png │ │ │ │ ├── splitter_horizontal_light.png │ │ │ │ ├── checkbox_indeterminate_light.png │ │ │ │ └── right_arrow_disabled_light.png │ │ ├── 3dsMax │ │ │ ├── Integration │ │ │ │ ├── initPrism.ms │ │ │ │ ├── initPrism.py │ │ │ │ └── PrismMacros.mcr │ │ │ ├── Resources │ │ │ │ └── max.ico │ │ │ └── Presets │ │ │ │ └── EmptyScene 3dsMax.max │ │ ├── Maya │ │ │ ├── Integration │ │ │ │ ├── Prism.mod │ │ │ │ ├── icons │ │ │ │ │ ├── prismSave.png │ │ │ │ │ ├── prismBrowser.png │ │ │ │ │ ├── prismExport.png │ │ │ │ │ ├── prismImport.png │ │ │ │ │ ├── prismRender.png │ │ │ │ │ ├── prismSettings.png │ │ │ │ │ ├── prismStates.png │ │ │ │ │ ├── prismPlayblast.png │ │ │ │ │ └── prismSaveComment.png │ │ │ │ └── scripts │ │ │ │ │ ├── userSetup.py │ │ │ │ │ └── PrismInit.py │ │ │ └── Resources │ │ │ │ └── maya.png │ │ ├── Blender │ │ │ ├── Integration │ │ │ │ ├── space_topbar1.py │ │ │ │ ├── python3.dll │ │ │ │ ├── qminimal.dll │ │ │ │ ├── qwindows.dll │ │ │ │ ├── qoffscreen.dll │ │ │ │ └── space_topbar2.py │ │ │ ├── UserInterfaces │ │ │ │ ├── blender.ico │ │ │ │ └── BlenderStyleSheet │ │ │ │ │ ├── stylesheet.json │ │ │ │ │ ├── images │ │ │ │ │ ├── branch_end.png │ │ │ │ │ ├── close_dark.png │ │ │ │ │ ├── more_dark.png │ │ │ │ │ ├── more_light.png │ │ │ │ │ ├── branch_more.png │ │ │ │ │ ├── branch_vline.png │ │ │ │ │ ├── close_light.png │ │ │ │ │ ├── sizegrip_dark.png │ │ │ │ │ ├── transparent.png │ │ │ │ │ ├── undock_dark.png │ │ │ │ │ ├── undock_light.png │ │ │ │ │ ├── up_arrow_dark.png │ │ │ │ │ ├── checkbox_light.png │ │ │ │ │ ├── down_arrow_dark.png │ │ │ │ │ ├── left_arrow_dark.png │ │ │ │ │ ├── sizegrip_light.png │ │ │ │ │ ├── up_arrow_darker.png │ │ │ │ │ ├── up_arrow_light.png │ │ │ │ │ ├── Hmovetoolbar_dark.png │ │ │ │ │ ├── Hmovetoolbar_light.png │ │ │ │ │ ├── Hsepartoolbar_dark.png │ │ │ │ │ ├── Vmovetoolbar_dark.png │ │ │ │ │ ├── Vmovetoolbar_light.png │ │ │ │ │ ├── Vsepartoolbar_dark.png │ │ │ │ │ ├── background_freecad.png │ │ │ │ │ ├── branch_closed_dark.png │ │ │ │ │ ├── branch_open_dark.png │ │ │ │ │ ├── branch_open_darker.png │ │ │ │ │ ├── branch_open_light.png │ │ │ │ │ ├── down_arrow_darker.png │ │ │ │ │ ├── down_arrow_light.png │ │ │ │ │ ├── down_arrow_lighter.png │ │ │ │ │ ├── left_arrow_darker.png │ │ │ │ │ ├── left_arrow_light.png │ │ │ │ │ ├── left_arrow_lighter.png │ │ │ │ │ ├── radiobutton_light.png │ │ │ │ │ ├── right_arrow_dark.png │ │ │ │ │ ├── right_arrow_darker.png │ │ │ │ │ ├── right_arrow_light.png │ │ │ │ │ ├── up_arrow_lighter.png │ │ │ │ │ ├── Hsepartoolbar_light.png │ │ │ │ │ ├── Vsepartoolbar_light.png │ │ │ │ │ ├── branch_closed_darker.png │ │ │ │ │ ├── branch_closed_light.png │ │ │ │ │ ├── right_arrow_lighter.png │ │ │ │ │ ├── splitter_vertical_dark.png │ │ │ │ │ ├── splitter_vertical_light.png │ │ │ │ │ ├── up_arrow_disabled_dark.png │ │ │ │ │ ├── up_arrow_disabled_light.png │ │ │ │ │ ├── down_arrow_disabled_dark.png │ │ │ │ │ ├── down_arrow_disabled_light.png │ │ │ │ │ ├── left_arrow_disabled_dark.png │ │ │ │ │ ├── left_arrow_disabled_light.png │ │ │ │ │ ├── right_arrow_disabled_dark.png │ │ │ │ │ ├── splitter_horizontal_dark.png │ │ │ │ │ ├── splitter_horizontal_light.png │ │ │ │ │ ├── checkbox_indeterminate_light.png │ │ │ │ │ └── right_arrow_disabled_light.png │ │ │ │ │ ├── images_blender │ │ │ │ │ ├── horizontal_line.png │ │ │ │ │ └── vertical_line.png │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── README.md │ │ │ └── Presets │ │ │ │ └── EmptyScene Blender.blend │ │ ├── Nuke │ │ │ ├── Resources │ │ │ │ └── NukeXApp.ico │ │ │ ├── Presets │ │ │ │ └── EmptyScene Nuke.nk │ │ │ └── Integration │ │ │ │ └── menu.py │ │ ├── PureRef │ │ │ ├── Resources │ │ │ │ └── PureRef.ico │ │ │ ├── Presets │ │ │ │ └── EmptyScene PureRef.pur │ │ │ └── Scripts │ │ │ │ ├── Prism_PureRef_Functions.py │ │ │ │ └── Prism_PureRef_Integration.py │ │ ├── Cinema4D │ │ │ ├── Resources │ │ │ │ └── cinema4d.ico │ │ │ ├── Presets │ │ │ │ └── EmptyScene Cinema4D.c4d │ │ │ └── UserInterfaces │ │ │ │ └── Cinema4DStyleSheet │ │ │ │ ├── stylesheet.json │ │ │ │ └── images │ │ │ │ ├── branch_end.png │ │ │ │ ├── branch_more.png │ │ │ │ ├── branch_open.png │ │ │ │ ├── close_dark.png │ │ │ │ ├── close_light.png │ │ │ │ ├── more_dark.png │ │ │ │ ├── more_light.png │ │ │ │ ├── transparent.png │ │ │ │ ├── undock_dark.png │ │ │ │ ├── branch_closed.png │ │ │ │ ├── branch_vline.png │ │ │ │ ├── sizegrip_dark.png │ │ │ │ ├── undock_light.png │ │ │ │ ├── up_arrow_dark.png │ │ │ │ ├── vertical_line.png │ │ │ │ ├── branch_closed-on.png │ │ │ │ ├── branch_open-on.png │ │ │ │ ├── branch_open_dark.png │ │ │ │ ├── checkbox_light.png │ │ │ │ ├── down_arrow_dark.png │ │ │ │ ├── down_arrow_light.png │ │ │ │ ├── horizontal_line.png │ │ │ │ ├── left_arrow_dark.png │ │ │ │ ├── left_arrow_light.png │ │ │ │ ├── right_arrow_dark.png │ │ │ │ ├── sizegrip_light.png │ │ │ │ ├── up_arrow_darker.png │ │ │ │ ├── up_arrow_light.png │ │ │ │ ├── up_arrow_lighter.png │ │ │ │ ├── Hmovetoolbar_dark.png │ │ │ │ ├── Hmovetoolbar_light.png │ │ │ │ ├── Hsepartoolbar_dark.png │ │ │ │ ├── Vmovetoolbar_dark.png │ │ │ │ ├── Vmovetoolbar_light.png │ │ │ │ ├── Vsepartoolbar_dark.png │ │ │ │ ├── background_freecad.png │ │ │ │ ├── branch_closed_dark.png │ │ │ │ ├── branch_open_darker.png │ │ │ │ ├── down_arrow_darker.png │ │ │ │ ├── down_arrow_lighter.png │ │ │ │ ├── left_arrow_darker.png │ │ │ │ ├── left_arrow_lighter.png │ │ │ │ ├── radiobutton_light.png │ │ │ │ ├── right_arrow_darker.png │ │ │ │ ├── right_arrow_light.png │ │ │ │ ├── Hsepartoolbar_light.png │ │ │ │ ├── Vsepartoolbar_light.png │ │ │ │ ├── branch_closed_darker.png │ │ │ │ ├── right_arrow_lighter.png │ │ │ │ ├── splitter_vertical_dark.png │ │ │ │ ├── splitter_vertical_light.png │ │ │ │ ├── up_arrow_disabled_dark.png │ │ │ │ ├── up_arrow_disabled_light.png │ │ │ │ ├── down_arrow_disabled_dark.png │ │ │ │ ├── down_arrow_disabled_light.png │ │ │ │ ├── left_arrow_disabled_dark.png │ │ │ │ ├── left_arrow_disabled_light.png │ │ │ │ ├── right_arrow_disabled_dark.png │ │ │ │ ├── right_arrow_disabled_light.png │ │ │ │ ├── splitter_horizontal_dark.png │ │ │ │ ├── splitter_horizontal_light.png │ │ │ │ └── checkbox_indeterminate_light.png │ │ ├── Photoshop │ │ │ ├── Integration │ │ │ │ ├── Mac │ │ │ │ │ ├── Prism - 1 Tools.jsx │ │ │ │ │ ├── Prism - 4 Export.jsx │ │ │ │ │ ├── Prism - 6 Settings.jsx │ │ │ │ │ ├── Prism - 2 Save Version.jsx │ │ │ │ │ ├── Prism - 3 Save Extended.jsx │ │ │ │ │ └── Prism - 5 Project Browser.jsx │ │ │ │ └── Windows │ │ │ │ │ ├── Prism - 1 Tools.jsx │ │ │ │ │ ├── Prism - 4 Export.jsx │ │ │ │ │ ├── Prism - 6 Settings.jsx │ │ │ │ │ ├── Prism - 2 Save version.jsx │ │ │ │ │ ├── Prism - 3 Save Extended.jsx │ │ │ │ │ └── Prism - 5 Project Browser.jsx │ │ │ ├── UserInterfaces │ │ │ │ ├── photoshop.ico │ │ │ │ └── PhotoshopStyleSheet │ │ │ │ │ ├── stylesheet.json │ │ │ │ │ ├── images │ │ │ │ │ ├── more_dark.png │ │ │ │ │ ├── branch_end.png │ │ │ │ │ ├── branch_more.png │ │ │ │ │ ├── branch_open.png │ │ │ │ │ ├── close_dark.png │ │ │ │ │ ├── close_light.png │ │ │ │ │ ├── more_light.png │ │ │ │ │ ├── transparent.png │ │ │ │ │ ├── undock_dark.png │ │ │ │ │ ├── branch_closed.png │ │ │ │ │ ├── branch_open-on.png │ │ │ │ │ ├── branch_vline.png │ │ │ │ │ ├── checkbox_light.png │ │ │ │ │ ├── sizegrip_dark.png │ │ │ │ │ ├── sizegrip_light.png │ │ │ │ │ ├── undock_light.png │ │ │ │ │ ├── up_arrow_dark.png │ │ │ │ │ ├── up_arrow_light.png │ │ │ │ │ ├── branch_closed-on.png │ │ │ │ │ ├── branch_open_dark.png │ │ │ │ │ ├── down_arrow_dark.png │ │ │ │ │ ├── down_arrow_light.png │ │ │ │ │ ├── left_arrow_dark.png │ │ │ │ │ ├── left_arrow_light.png │ │ │ │ │ ├── right_arrow_dark.png │ │ │ │ │ ├── up_arrow_darker.png │ │ │ │ │ ├── up_arrow_lighter.png │ │ │ │ │ ├── Hmovetoolbar_dark.png │ │ │ │ │ ├── Hmovetoolbar_light.png │ │ │ │ │ ├── Hsepartoolbar_dark.png │ │ │ │ │ ├── Hsepartoolbar_light.png │ │ │ │ │ ├── Vmovetoolbar_dark.png │ │ │ │ │ ├── Vmovetoolbar_light.png │ │ │ │ │ ├── Vsepartoolbar_dark.png │ │ │ │ │ ├── Vsepartoolbar_light.png │ │ │ │ │ ├── background_freecad.png │ │ │ │ │ ├── branch_closed_dark.png │ │ │ │ │ ├── branch_open_darker.png │ │ │ │ │ ├── down_arrow_darker.png │ │ │ │ │ ├── down_arrow_lighter.png │ │ │ │ │ ├── left_arrow_darker.png │ │ │ │ │ ├── left_arrow_lighter.png │ │ │ │ │ ├── radiobutton_light.png │ │ │ │ │ ├── right_arrow_darker.png │ │ │ │ │ ├── right_arrow_light.png │ │ │ │ │ ├── right_arrow_lighter.png │ │ │ │ │ ├── branch_closed_darker.png │ │ │ │ │ ├── down_arrow_disabled_dark.png │ │ │ │ │ ├── left_arrow_disabled_dark.png │ │ │ │ │ ├── splitter_horizontal_dark.png │ │ │ │ │ ├── splitter_vertical_dark.png │ │ │ │ │ ├── splitter_vertical_light.png │ │ │ │ │ ├── up_arrow_disabled_dark.png │ │ │ │ │ ├── up_arrow_disabled_light.png │ │ │ │ │ ├── down_arrow_disabled_light.png │ │ │ │ │ ├── left_arrow_disabled_light.png │ │ │ │ │ ├── right_arrow_disabled_dark.png │ │ │ │ │ ├── right_arrow_disabled_light.png │ │ │ │ │ ├── splitter_horizontal_light.png │ │ │ │ │ └── checkbox_indeterminate_light.png │ │ │ │ │ ├── images_photoshop │ │ │ │ │ ├── vertical_line.png │ │ │ │ │ └── horizontal_line.png │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── README.md │ │ │ └── Presets │ │ │ │ └── EmptyScene Photoshop.psd │ │ ├── PluginEmpty │ │ │ └── Integration │ │ │ │ └── PrismInit.py │ │ └── Standalone │ │ │ └── Scripts │ │ │ └── Prism_Standalone_externalAccess_Functions.py │ └── Custom │ │ ├── Readme.txt │ │ └── Deadline │ │ └── Scripts │ │ ├── Prism_Deadline_Variables.py │ │ └── Prism_Deadline_init.py ├── setup.bat ├── prism.bat ├── uninstall.bat └── Presets │ └── Projects │ └── Default │ └── 00_Pipeline │ ├── Icons │ ├── FX.png │ ├── CharFX.png │ ├── Layout.png │ ├── Concept.png │ ├── Lighting.png │ ├── Modeling.png │ ├── Rigging.png │ ├── Animation.png │ ├── Compositing.png │ └── Surfacing.png │ ├── Fallbacks │ ├── exr.jpg │ ├── jpeg.jpg │ ├── jpg.jpg │ ├── mov.jpg │ ├── mp4.jpg │ ├── png.jpg │ ├── tif.jpg │ ├── tiff.jpg │ ├── noFileBig.jpg │ ├── noFileSmall.jpg │ └── readme.txt │ ├── CustomModules │ └── readme.txt │ ├── PresetScenes │ └── readme.txt │ ├── Hooks │ ├── readme.txt │ ├── preSaveScene.py │ ├── postSaveScene.py │ ├── postRender.py │ ├── preImport.py │ ├── preRender.py │ ├── postImport.py │ ├── postExport.py │ ├── postPlayblast.py │ ├── preExport.py │ └── prePlayblast.py │ └── Plugins │ └── readme.txt ├── .gitignore ├── doc ├── _static │ └── prism-pipeline-logo.png ├── Maya.rst ├── Nuke.rst ├── 3dsMax.rst ├── Blender.rst ├── Houdini.rst ├── PureRef.rst ├── Deadline.rst ├── Photoshop.rst ├── Standalone.rst └── index.rst └── .github └── ISSUE_TEMPLATE ├── feature_request.md └── bug_report.md /Prism/Scripts/PrismUtils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Prism/Scripts/UserInterfacesPrism/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Houdini/Integration/jump.pref: -------------------------------------------------------------------------------- 1 | $PRISM_JOB -------------------------------------------------------------------------------- /Prism/Scripts/ProjectScripts/UserInterfaces/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Prism/Scripts/UserInterfacesPrism/stylesheets/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | Prism/Python37/ 3 | Prism/PythonLibs/ 4 | Prism/Tools/ -------------------------------------------------------------------------------- /Prism/setup.bat: -------------------------------------------------------------------------------- 1 | "%~dp0/Python313/python.exe" "%~dp0/Scripts/PrismInstaller.py" 2 | ::PAUSE -------------------------------------------------------------------------------- /Prism/prism.bat: -------------------------------------------------------------------------------- 1 | start "" "%~dp0/Python313/pythonw.exe" "%~dp0/Scripts/PrismCore.py" 2 | ::PAUSE -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/Integration/prism.aep/mimetype: -------------------------------------------------------------------------------- 1 | application/vnd.adobe.air-ucf-package+zip -------------------------------------------------------------------------------- /Prism/uninstall.bat: -------------------------------------------------------------------------------- 1 | "%~dp0/Python313/python.exe" "%~dp0/Scripts/PrismInstaller.py" uninstall 2 | ::PAUSE -------------------------------------------------------------------------------- /Prism/Plugins/Apps/3dsMax/Integration/initPrism.ms: -------------------------------------------------------------------------------- 1 | if not IsNetServer() then python.ExecuteFile "initPrism.py" -------------------------------------------------------------------------------- /doc/_static/prism-pipeline-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/doc/_static/prism-pipeline-logo.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Maya/Integration/Prism.mod: -------------------------------------------------------------------------------- 1 | + Prism 1.0.0 PLUGINROOT/Integration 2 | PRISM_ROOT=PRISMROOT 3 | MAYA_SHELF_PATH+:=shelves -------------------------------------------------------------------------------- /Prism/Scripts/UserInterfacesPrism/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Scripts/UserInterfacesPrism/add.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/3dsMax/Resources/max.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/3dsMax/Resources/max.ico -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Blender/Integration/space_topbar1.py: -------------------------------------------------------------------------------- 1 | 2 | #>>>PrismStart 3 | layout.menu("TOPBAR_MT_prism") 4 | #<<>>PrismStart 2 | try: 3 | import PrismInit 4 | 5 | PrismInit.createPrismCore() 6 | except Exception as e: 7 | print(str(e)) 8 | # <<>>PrismStart 2 | try: 3 | import PrismInit 4 | 5 | PrismInit.createPrismCore() 6 | except Exception as e: 7 | print(str(e)) 8 | # <<>>PrismStart 2 | try: 3 | import PrismInit 4 | 5 | PrismInit.createPrismCore() 6 | except Exception as e: 7 | print(str(e)) 8 | # <<>>PrismStart 2 | try: 3 | import PrismInit 4 | 5 | PrismInit.createPrismCore() 6 | except Exception as e: 7 | print(str(e)) 8 | # << 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/Hsepartoolbar_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/Hsepartoolbar_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/Vsepartoolbar_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/Vsepartoolbar_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/branch_closed_darker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/branch_closed_darker.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/right_arrow_lighter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/right_arrow_lighter.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Cinema4D/UserInterfaces/Cinema4DStyleSheet/images/checkbox_indeterminate_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Cinema4D/UserInterfaces/Cinema4DStyleSheet/images/checkbox_indeterminate_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/down_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/down_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/left_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/left_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/right_arrow_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/right_arrow_disabled_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/right_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/right_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/splitter_horizontal_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/splitter_horizontal_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images_photoshop/horizontal_line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images_photoshop/horizontal_line.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_vertical_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_vertical_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_vertical_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_vertical_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/up_arrow_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/up_arrow_disabled_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/up_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/up_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/checkbox_indeterminate_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/images/checkbox_indeterminate_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/down_arrow_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/down_arrow_disabled_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/down_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/down_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/left_arrow_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/left_arrow_disabled_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/left_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/left_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/right_arrow_disabled_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/right_arrow_disabled_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_horizontal_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_horizontal_dark.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_horizontal_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/splitter_horizontal_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/checkbox_indeterminate_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/checkbox_indeterminate_light.png -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/right_arrow_disabled_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PrismPipeline/Prism/HEAD/Prism/Plugins/Apps/AfterEffects/UserInterfaces/AfterEffectsStyleSheet/images/right_arrow_disabled_light.png -------------------------------------------------------------------------------- /Prism/Presets/Projects/Default/00_Pipeline/CustomModules/readme.txt: -------------------------------------------------------------------------------- 1 | The CustomModules/Python folder gets appended to the PATH environment variable by Prism. You can place 3rd party python modules in there, which you want to use in your hooks/Prism-plugins/custom scripts. -------------------------------------------------------------------------------- /Prism/Presets/Projects/Default/00_Pipeline/PresetScenes/readme.txt: -------------------------------------------------------------------------------- 1 | The EmptyScenes folder contains preset scenefiles for various DCC apps. These files are loaded when you choose "Create new version from preset" in the Project Browser. You can open these files and modify them to create your own EmptyScene preset scene. You can create new presets from the Project Browser or by placing new files in this folder. -------------------------------------------------------------------------------- /Prism/Plugins/Apps/AfterEffects/Integration/prism.aep/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Prism 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Prism/Presets/Projects/Default/00_Pipeline/Hooks/readme.txt: -------------------------------------------------------------------------------- 1 | The Hooks folder contains python scripts, which gets executed during the execution of State Manager states. 2 | You can add your own python code to these scripts, to modify your scene or call any custom features, which you want to add to your workflow. 3 | You can also create new hooks, which are named like Prism callbacks. They will get executed when the callback is triggered in Prism. -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Blender/UserInterfaces/BlenderStyleSheet/__init__.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | 4 | def load_stylesheet(): 5 | sFile = os.path.dirname(__file__) + "/Blender2.8.qss" 6 | if not os.path.exists(sFile): 7 | return "" 8 | 9 | with open(sFile, "r") as f: 10 | stylesheet = f.read() 11 | 12 | stylesheet = stylesheet.replace("qss:", os.path.dirname(__file__).replace("\\", "/") + "/") 13 | return stylesheet 14 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Photoshop/UserInterfaces/PhotoshopStyleSheet/__init__.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | 4 | def load_stylesheet(): 5 | sFile = os.path.dirname(__file__) + "/Photoshop.qss" 6 | if not os.path.exists(sFile): 7 | return "" 8 | 9 | with open(sFile, "r") as f: 10 | stylesheet = f.read() 11 | 12 | stylesheet = stylesheet.replace("qss:", os.path.dirname(__file__).replace("\\", "/") + "/") 13 | return stylesheet 14 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/PluginEmpty/Integration/PrismInit.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | 5 | def prismInit(): 6 | prismRoot = os.getenv("PRISM_ROOT") 7 | if not prismRoot: 8 | prismRoot = PRISMROOT 9 | 10 | scriptDir = os.path.join(prismRoot, "Scripts") 11 | 12 | if scriptDir not in sys.path: 13 | sys.path.append(scriptDir) 14 | 15 | import PrismCore 16 | 17 | pcore = PrismCore.PrismCore(app="PluginEmtpy") 18 | return pcore 19 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | 5 | --- 6 | 7 | **Is your feature request related to a problem? Please describe.** 8 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 9 | 10 | **Describe the solution you'd like** 11 | A clear and concise description of what you want to happen. 12 | 13 | **Additional context** 14 | Add any other context or screenshots about the feature request here. 15 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/3dsMax/Integration/initPrism.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | from pymxs import runtime as rt 5 | 6 | 7 | def prismInit(): 8 | prismRoot = os.getenv("PRISM_ROOT") 9 | if not prismRoot: 10 | prismRoot = PRISMROOT 11 | 12 | scriptDir = os.path.join(prismRoot, "Scripts") 13 | if scriptDir not in sys.path: 14 | sys.path.append(scriptDir) 15 | 16 | import PrismCore 17 | global pcore 18 | pcore = PrismCore.PrismCore(app="3dsMax") 19 | 20 | 21 | if "pcore" not in globals() and not rt.execute("IsNetServer()"): 22 | prismInit() 23 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Nuke/Presets/EmptyScene Nuke.nk: -------------------------------------------------------------------------------- 1 | Root { 2 | inputs 0 3 | name P:/00_Pipeline/EmptyScenes/EmptyScene_Nuke11.nk 4 | first_frame 1001 5 | last_frame 1100 6 | fps 25 7 | format "1920 1080 0 0 1920 1080 1 HD_1080" 8 | proxy_type scale 9 | proxy_format "1024 778 0 0 1024 778 1 1K_Super_35(full-ap)" 10 | colorManagement Nuke 11 | workingSpaceLUT linear 12 | monitorLut sRGB 13 | int8Lut sRGB 14 | int16Lut sRGB 15 | logLut Cineon 16 | floatLut linear 17 | } 18 | Viewer { 19 | inputs 0 20 | frame 1 21 | frame_range 1001-1100 22 | name Viewer1 23 | xpos -40 24 | ypos -10 25 | } 26 | -------------------------------------------------------------------------------- /Prism/Presets/Projects/Default/00_Pipeline/Plugins/readme.txt: -------------------------------------------------------------------------------- 1 | The Plugin directory can contain Prism plugins, which modify or extend the functionalities of Prism when this project is active. You can use the same Prism plugins in this folder as in your Plugin directory in the Prism installation directory. Plugins in this directory are only available as long as this project is active. 2 | You don't need to group plugins in this folder under "Apps", "Custom"... but make sure the self.pluginType variable in the plugin script identifies the type of Prism plugin. In your Prism installation directory you can find an example how to create a new Prism plugin. -------------------------------------------------------------------------------- /Prism/Presets/Projects/Default/00_Pipeline/Hooks/preSaveScene.py: -------------------------------------------------------------------------------- 1 | # This script will be executed after the execution of an export state in the Prism State Manager. 2 | # You can use this file to define project specific actions, like manipulating the outputfiles. 3 | 4 | # Example: 5 | # print "Prism has exported objects." 6 | 7 | # If the main function exists in this script, it will be called. 8 | 9 | 10 | # def main(core, filepath, versionUp, comment, publish, details): 11 | # print(core.projectName) 12 | # print(filepath) 13 | # print(versionUp) 14 | # print(comment) 15 | # print(publish) 16 | # print(details) 17 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Houdini/Integration/OPmenu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | opmenu.outputs_menu 7 | 8 | 9 | 10 | opmenu.capture_sep 11 | 12 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Blender/Integration/space_topbar2.py: -------------------------------------------------------------------------------- 1 | # >>>PrismStart 2 | class TOPBAR_MT_prism(Menu): 3 | bl_label = "Prism" 4 | 5 | def draw(self, context): 6 | layout = self.layout 7 | 8 | row = layout.row() 9 | row.operator("object.prism_save") 10 | 11 | row = layout.row() 12 | row.operator("object.prism_savecomment") 13 | 14 | row = layout.row() 15 | row.operator("object.prism_browser") 16 | 17 | row = layout.row() 18 | row.operator("object.prism_manager") 19 | 20 | row = layout.row() 21 | row.operator("object.prism_settings") 22 | 23 | 24 | # <<`__. 9 | 10 | More information including example scripts can be found in the `Prism User Documentation `__. 11 | 12 | 13 | .. toctree:: 14 | :glob: 15 | :maxdepth: 1 16 | :caption: Core: 17 | 18 | autodoc/core/* 19 | 20 | .. toctree:: 21 | :maxdepth: 1 22 | :caption: Plugins: 23 | 24 | 3dsMax 25 | Blender 26 | Deadline 27 | Houdini 28 | Maya 29 | Nuke 30 | Photoshop 31 | PureRef 32 | Standalone 33 | 34 | Indices and tables 35 | ================== 36 | 37 | * :ref:`genindex` 38 | * :ref:`modindex` 39 | * :ref:`search` 40 | 41 | 42 | -------------------------------------------------------------------------------- /Prism/Plugins/Custom/Readme.txt: -------------------------------------------------------------------------------- 1 | You can add custom plugins to this folder (Plugins/Custom in your Prism folder) to extend or change the features of Prism. 2 | 3 | To create a new plugin duplicate the "PluginEmpty" folder. Then replace "PluginEmpty" with your pluginname in all filenames in this folder and in the content of all .py files. 4 | 5 | You can use the various callback functions in the Prism__Functions.py file to execute your custom python code at specific events. 6 | Then save the file and restart your Prism app to reload the plugin. 7 | 8 | You can also use the "reloadCustomPlugins" function of the Prism core object to reload your plugin without the need to restart your 3d app. 9 | For example in Maya you can execute this in the Python script editor: 10 | pcore.reloadCustomPlugins() 11 | 12 | If you need additional callback functions for your, contact me at contact@prism-pipeline.com and I'll add the callbacks as soon as possible to the official Prism version. -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Nuke/Integration/menu.py: -------------------------------------------------------------------------------- 1 | # >>>PrismStart 2 | import sys 3 | import nuke 4 | 5 | if ((not nuke.env["studio"]) or nuke.env["indie"]) and nuke.env.get("gui"): 6 | if "pcore" in locals(): 7 | nuke.message("Prism is loaded multiple times. This can cause unexpected errors. Please clean this file from all Prism related content:\n\n%s\n\nYou can add a new Prism integration through the Prism Settings dialog" % __file__) 8 | elif sys.version[0] == "2": 9 | nuke.message("Prism supports only Python 3 versions of Nuke.\nPython 3 is the default in Nuke 13 and later.") 10 | else: 11 | import os 12 | import sys 13 | 14 | prismRoot = os.getenv("PRISM_ROOT") 15 | if not prismRoot: 16 | prismRoot = PRISMROOT 17 | 18 | scriptDir = os.path.join(prismRoot, "Scripts") 19 | if scriptDir not in sys.path: 20 | sys.path.append(scriptDir) 21 | 22 | import PrismCore 23 | 24 | pcore = PrismCore.PrismCore(app="Nuke") 25 | # <<>>PrismStart 3 | import sys 4 | from maya import OpenMaya as omya 5 | 6 | if omya.MGlobal.mayaState() != omya.MGlobal.kBatch: 7 | if "pcore" in locals() and pcore: 8 | try: 9 | from PySide6 import QtWidgets 10 | except: 11 | from PySide2 import QtWidgets 12 | QtWidgets.QMessageBox.warning(None, "Prism Warning", "Prism is loaded multiple times. This can cause unexpected errors. Please clean all Prism related content from the userSetup.py in your Maya user preferences.\n\nYou can add a new Prism integration through the Prism Settings dialog.") 13 | elif sys.version[0] == "2": 14 | import PySide2 15 | PySide2.QtWidgets.QMessageBox.warning(None, "Prism Warning", "Prism supports only Python 3 versions of Maya.\nPython 3 is the default in Maya 2022 and later.") 16 | 17 | else: 18 | try: 19 | import PrismInit 20 | pcore = PrismInit.prismInit() 21 | except: 22 | import traceback 23 | print("Error occured while loading Prism:\n\n%s" % traceback.format_exc()) 24 | # << 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | ./index.html 19 | 20 | --enable-nodejs 21 | 22 | 23 | 24 | true 25 | 26 | 27 | Panel 28 | Prism 29 | 30 | 31 | 400 32 | 200 33 | 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Maya/Integration/scripts/PrismInit.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | 5 | def prismInit(prismArgs=[]): 6 | prismRoot = os.getenv("PRISM_ROOT") 7 | if not prismRoot: 8 | raise Exception("PRISM_ROOT env var is not defined. Please reinstall the Prism integration") 9 | 10 | import maya.cmds as cmds 11 | if cmds.about(batch=True): 12 | try: 13 | from PySide6 import QtWidgets 14 | except: 15 | from PySide2 import QtWidgets 16 | 17 | qapp = QtWidgets.QApplication.instance() 18 | if not isinstance(qapp, QtWidgets.QApplication): 19 | print("Cannot create Prism instance because no QApplication exists. To load Prism you can create a QApplication before initilizing mayapy like this: import sys;from PySide2 import QtWidgets;QtWidgets.QApplication(sys.argv)") 20 | return 21 | 22 | if not qapp: 23 | QtWidgets.QApplication(sys.argv) 24 | 25 | prismArgs.append("noUI") 26 | 27 | scriptDir = os.path.join(prismRoot, "Scripts") 28 | 29 | if scriptDir not in sys.path: 30 | sys.path.append(scriptDir) 31 | 32 | import PrismCore 33 | global pcore 34 | pcore = PrismCore.PrismCore(app="Maya", prismArgs=prismArgs) 35 | return pcore 36 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Standalone/Scripts/Prism_Standalone_externalAccess_Functions.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | #################################################### 4 | # 5 | # PRISM - Pipeline for animation and VFX projects 6 | # 7 | # www.prism-pipeline.com 8 | # 9 | # contact: contact@prism-pipeline.com 10 | # 11 | #################################################### 12 | # 13 | # 14 | # Copyright (C) 2016-2023 Richard Frangenberg 15 | # Copyright (C) 2023 Prism Software GmbH 16 | # 17 | # Licensed under GNU LGPL-3.0-or-later 18 | # 19 | # This file is part of Prism. 20 | # 21 | # Prism is free software: you can redistribute it and/or modify 22 | # it under the terms of the GNU Lesser General Public License as published by 23 | # the Free Software Foundation, either version 3 of the License, or 24 | # (at your option) any later version. 25 | # 26 | # Prism is distributed in the hope that it will be useful, 27 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 28 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 29 | # GNU Lesser General Public License for more details. 30 | # 31 | # You should have received a copy of the GNU Lesser General Public License 32 | # along with Prism. If not, see . 33 | 34 | 35 | class Prism_Standalone_externalAccess_Functions(object): 36 | def __init__(self, core, plugin): 37 | pass 38 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/PureRef/Scripts/Prism_PureRef_Functions.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | #################################################### 4 | # 5 | # PRISM - Pipeline for animation and VFX projects 6 | # 7 | # www.prism-pipeline.com 8 | # 9 | # contact: contact@prism-pipeline.com 10 | # 11 | #################################################### 12 | # 13 | # 14 | # Copyright (C) 2016-2023 Richard Frangenberg 15 | # Copyright (C) 2023 Prism Software GmbH 16 | # 17 | # Licensed under GNU LGPL-3.0-or-later 18 | # 19 | # This file is part of Prism. 20 | # 21 | # Prism is free software: you can redistribute it and/or modify 22 | # it under the terms of the GNU Lesser General Public License as published by 23 | # the Free Software Foundation, either version 3 of the License, or 24 | # (at your option) any later version. 25 | # 26 | # Prism is distributed in the hope that it will be useful, 27 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 28 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 29 | # GNU Lesser General Public License for more details. 30 | # 31 | # You should have received a copy of the GNU Lesser General Public License 32 | # along with Prism. If not, see . 33 | 34 | 35 | class Prism_PureRef_Functions(object): 36 | def __init__(self, core, plugin): 37 | self.core = core 38 | self.plugin = plugin 39 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/PureRef/Scripts/Prism_PureRef_Integration.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | #################################################### 4 | # 5 | # PRISM - Pipeline for animation and VFX projects 6 | # 7 | # www.prism-pipeline.com 8 | # 9 | # contact: contact@prism-pipeline.com 10 | # 11 | #################################################### 12 | # 13 | # 14 | # Copyright (C) 2016-2023 Richard Frangenberg 15 | # Copyright (C) 2023 Prism Software GmbH 16 | # 17 | # Licensed under GNU LGPL-3.0-or-later 18 | # 19 | # This file is part of Prism. 20 | # 21 | # Prism is free software: you can redistribute it and/or modify 22 | # it under the terms of the GNU Lesser General Public License as published by 23 | # the Free Software Foundation, either version 3 of the License, or 24 | # (at your option) any later version. 25 | # 26 | # Prism is distributed in the hope that it will be useful, 27 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 28 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 29 | # GNU Lesser General Public License for more details. 30 | # 31 | # You should have received a copy of the GNU Lesser General Public License 32 | # along with Prism. If not, see . 33 | 34 | 35 | class Prism_PureRef_Integration(object): 36 | def __init__(self, core, plugin): 37 | self.core = core 38 | self.plugin = plugin 39 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Houdini/Integration/MainMenuCommon.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 11 | 12 | 13 | 14 | 15 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 29 | 30 | 31 | 32 | 33 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Houdini/Integration/python3.10libs/PrismInit.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | 5 | def prismInit(prismArgs=[]): 6 | if "hython" in os.path.basename(sys.executable).lower(): 7 | if "noUI" not in prismArgs: 8 | prismArgs.append("noUI") 9 | 10 | from PySide2.QtWidgets import QApplication 11 | import hou 12 | QApplication.addLibraryPath( 13 | os.path.join(hou.text.expandString("$HFS"), "bin", "Qt_plugins") 14 | ) 15 | if not QApplication.instance(): 16 | QApplication(sys.argv) 17 | 18 | root = os.getenv("PRISM_ROOT", "") 19 | if not root: 20 | if not os.getenv("PRISM_STANDALONE_KARMA", ""): 21 | from PySide2 import QtWidgets 22 | QtWidgets.QMessageBox.warning(None, "Prism", "The environment variable \"PRISM_ROOT\" is not defined. Try to setup the Prism Houdini integration again from the DCC apps tab in the Prism User Settings.") 23 | 24 | return 25 | 26 | scriptPath = os.path.join(root, "Scripts") 27 | if scriptPath not in sys.path: 28 | sys.path.append(scriptPath) 29 | 30 | import PrismCore 31 | pcore = PrismCore.PrismCore(app="Houdini", prismArgs=prismArgs) 32 | return pcore 33 | 34 | 35 | def createPrismCore(): 36 | if os.getenv("PRISM_ENABLED") == "0": 37 | return 38 | 39 | try: 40 | import PySide2 41 | except: 42 | return 43 | 44 | global pcore 45 | pcore = prismInit() 46 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Houdini/Integration/python3.7libs/PrismInit.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | 5 | def prismInit(prismArgs=[]): 6 | if "hython" in os.path.basename(sys.executable).lower(): 7 | if "noUI" not in prismArgs: 8 | prismArgs.append("noUI") 9 | 10 | from PySide2.QtWidgets import QApplication 11 | import hou 12 | QApplication.addLibraryPath( 13 | os.path.join(hou.text.expandString("$HFS"), "bin", "Qt_plugins") 14 | ) 15 | if not QApplication.instance(): 16 | QApplication(sys.argv) 17 | 18 | root = os.getenv("PRISM_ROOT", "") 19 | if not root: 20 | if not os.getenv("PRISM_STANDALONE_KARMA", ""): 21 | from PySide2 import QtWidgets 22 | QtWidgets.QMessageBox.warning(None, "Prism", "The environment variable \"PRISM_ROOT\" is not defined. Try to setup the Prism Houdini integration again from the DCC apps tab in the Prism User Settings.") 23 | 24 | return 25 | 26 | scriptPath = os.path.join(root, "Scripts") 27 | if scriptPath not in sys.path: 28 | sys.path.append(scriptPath) 29 | 30 | import PrismCore 31 | pcore = PrismCore.PrismCore(app="Houdini", prismArgs=prismArgs) 32 | return pcore 33 | 34 | 35 | def createPrismCore(): 36 | if os.getenv("PRISM_ENABLED") == "0": 37 | return 38 | 39 | try: 40 | import PySide2 41 | except: 42 | return 43 | 44 | global pcore 45 | pcore = prismInit() 46 | -------------------------------------------------------------------------------- /Prism/Plugins/Apps/Houdini/Integration/python3.9libs/PrismInit.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | 5 | def prismInit(prismArgs=[]): 6 | if "hython" in os.path.basename(sys.executable).lower(): 7 | if "noUI" not in prismArgs: 8 | prismArgs.append("noUI") 9 | 10 | from PySide2.QtWidgets import QApplication 11 | import hou 12 | QApplication.addLibraryPath( 13 | os.path.join(hou.text.expandString("$HFS"), "bin", "Qt_plugins") 14 | ) 15 | if not QApplication.instance(): 16 | QApplication(sys.argv) 17 | 18 | root = os.getenv("PRISM_ROOT", "") 19 | if not root: 20 | if not os.getenv("PRISM_STANDALONE_KARMA", ""): 21 | from PySide2 import QtWidgets 22 | QtWidgets.QMessageBox.warning(None, "Prism", "The environment variable \"PRISM_ROOT\" is not defined. Try to setup the Prism Houdini integration again from the DCC apps tab in the Prism User Settings.") 23 | 24 | return 25 | 26 | scriptPath = os.path.join(root, "Scripts") 27 | if scriptPath not in sys.path: 28 | sys.path.append(scriptPath) 29 | 30 | import PrismCore 31 | pcore = PrismCore.PrismCore(app="Houdini", prismArgs=prismArgs) 32 | return pcore 33 | 34 | 35 | def createPrismCore(): 36 | if os.getenv("PRISM_ENABLED") == "0": 37 | return 38 | 39 | try: 40 | import PySide2 41 | except: 42 | return 43 | 44 | global pcore 45 | pcore = prismInit() 46 | -------------------------------------------------------------------------------- /Prism/Plugins/Custom/Deadline/Scripts/Prism_Deadline_Variables.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | #################################################### 4 | # 5 | # PRISM - Pipeline for animation and VFX projects 6 | # 7 | # www.prism-pipeline.com 8 | # 9 | # contact: contact@prism-pipeline.com 10 | # 11 | #################################################### 12 | # 13 | # 14 | # Copyright (C) 2016-2023 Richard Frangenberg 15 | # Copyright (C) 2023 Prism Software GmbH 16 | # 17 | # Licensed under GNU LGPL-3.0-or-later 18 | # 19 | # This file is part of Prism. 20 | # 21 | # Prism is free software: you can redistribute it and/or modify 22 | # it under the terms of the GNU Lesser General Public License as published by 23 | # the Free Software Foundation, either version 3 of the License, or 24 | # (at your option) any later version. 25 | # 26 | # Prism is distributed in the hope that it will be useful, 27 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 28 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 29 | # GNU Lesser General Public License for more details. 30 | # 31 | # You should have received a copy of the GNU Lesser General Public License 32 | # along with Prism. If not, see . 33 | 34 | 35 | class Prism_Deadline_Variables(object): 36 | def __init__(self, core, plugin): 37 | self.version = "v2.1.0" 38 | self.pluginName = "Deadline" 39 | self.pluginType = "Custom" 40 | self.canOutputLocal = True 41 | self.platforms = ["Windows", "Linux", "Darwin"] 42 | -------------------------------------------------------------------------------- /Prism/Plugins/Custom/Deadline/Scripts/Prism_Deadline_init.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | #################################################### 4 | # 5 | # PRISM - Pipeline for animation and VFX projects 6 | # 7 | # www.prism-pipeline.com 8 | # 9 | # contact: contact@prism-pipeline.com 10 | # 11 | #################################################### 12 | # 13 | # 14 | # Copyright (C) 2016-2023 Richard Frangenberg 15 | # Copyright (C) 2023 Prism Software GmbH 16 | # 17 | # Licensed under GNU LGPL-3.0-or-later 18 | # 19 | # This file is part of Prism. 20 | # 21 | # Prism is free software: you can redistribute it and/or modify 22 | # it under the terms of the GNU Lesser General Public License as published by 23 | # the Free Software Foundation, either version 3 of the License, or 24 | # (at your option) any later version. 25 | # 26 | # Prism is distributed in the hope that it will be useful, 27 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 28 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 29 | # GNU Lesser General Public License for more details. 30 | # 31 | # You should have received a copy of the GNU Lesser General Public License 32 | # along with Prism. If not, see . 33 | 34 | 35 | from Prism_Deadline_Variables import Prism_Deadline_Variables 36 | from Prism_Deadline_Functions import Prism_Deadline_Functions 37 | 38 | 39 | class Prism_Deadline(Prism_Deadline_Variables, Prism_Deadline_Functions): 40 | def __init__(self, core): 41 | Prism_Deadline_Variables.__init__(self, core, self) 42 | Prism_Deadline_Functions.__init__(self, core, self) 43 | --------------------------------------------------------------------------------