Q100402: Katana 에서 선반 항목을 편집하고 제거하여 기존 사용자 정의 Python 스크립트를 수정하는 방법

요약

이 문서에서는 선반 항목을 편집하거나 사용자 지정하는 방법과 필요한 경우 선반 항목을 제거하는 절차에 대해 설명합니다.

처음으로 선반 항목을 설정하려는 경우 Q100401: Katana 에서 선반 항목을 만드는 방법에 대한 단계와 정보를 따라 쉽게 액세스할 수 있는 사용자 정의 Python 스크립트를 제공하세요 .

선반 항목 편집

Katana 에서 Shelf Item Python 스크립트에 접근하거나 .katana 와 관련 Shelves, ShelvesNodeSpecific 또는 ShelvesScenegraph 디렉토리로 이동하여 해당 위치에서 스크립트를 찾으면 선반 항목을 생성한 후에 선반 항목을 편집할 수 있습니다.

1. Katana 에서 스크립트에 액세스하려면 Shelf Action을 열고 원하는 Shelf 항목을 선택한 다음 마우스 오른쪽 버튼을 클릭하여 ' 소스 보기 '를 클릭합니다.

뷰소스.png

이렇게 하면 다음과 같은 텍스트 편집기에서 Shelf Item Python 스크립트가 열립니다.

ShelfScript_NotePad.PNG

2. Katana 외부에서 스크립트에 액세스하려면 .katana/Shelves , .katana/ShelvesNodeSpecific 또는 .katana/ShelvesScenegraph 폴더로 이동하여 관련 .py 파일을 찾으세요.

이 파일은 해당 디렉토리 중 하나의 하위 폴더에 있으며, 선반 항목의 이름을 따서 명명됩니다. 해당 디렉토리에서 원하는 Python 편집기로 파일을 열 수 있습니다.

선반 항목 스크립트의 Docstring

Q100401: Katana 에서 Shelf Item을 만들어 쉽게 액세스할 수 있는 사용자 정의 Python 스크립트를 제공하는 방법에 설명된 프로세스를 사용하여 Shelf Item 스크립트를 만든 경우 기본적으로 다음과 같은 docstring이 포함됩니다.

""" 
NAME: <the name of the script to show in the UI>
ICON: <the filename of icon to use in the UI>
KEYBOARD_SHORTCUT: <the keyboard shortcut to use in the UI to run the Shelf Item Script> SCOPE: <names of types of nodes to target by node-specific shelf items> <description> """

여기에는 아래와 같이 스크립트에 대한 정보가 들어 있습니다.

  • NAME은 Shelf Action에 표시되는 스크립트 항목의 이름입니다.
  • ICON은 선택한 아이콘의 이미지 위치입니다. (자세한 내용은 아래에서 설명합니다.)
  • KEYBOARD_SHORTCUT은 스크립트 항목을 실행할 수 있는 단축키입니다.
  • SCOPE는 선반 항목이 적용되는 특정 노드 유형을 정의하는 데 사용됩니다.
  • <설명>은 선반 항목에 대한 도움말 도구 설명입니다.

참고: 사용자 지정 선반 항목에 키보드 단축키를 설정할 때 Katana 에 이미 존재하는 단축키는 사용할 수 없습니다. 경고 메시지가 표시되며, Katana 기본 키보드 단축키 목록은 키보드 단축키 리소스에서 확인할 수 있습니다.

선반 항목 스크립트 편집

위의 docstring을 어떻게 활용할 수 있는지 보여주기 위해 아래의 Shelf Item Script를 빈 .py 파일에 복사하고 .katana/Shelves/Custom_Shelves/ 디렉토리에 저장하세요.

"""
NAME: Float Selected
ICON: Icons\Scenegraph\locator32.png
KEYBOARD_SHORTCUT: T
SCOPE: none
Float Selected Nodes via Keyboard Shortcut
"""

# Get list of selected nodes
nodeList = NodegraphAPI.GetAllSelectedNodes()

# Find Nodegraph tab and float nodes
nodegraphTab = UI4.App.Tabs.FindTopTab('Node Graph')
if nodegraphTab:
    nodegraphTab.floatNodes(nodeList)


스크립트를 저장한 후 Katana Shelf Action 메뉴에서 ' 추가 -> Shelf 다시 로드' 를 통해 Shelf를 다시 로드합니다.

ReloadShelf.png

선반 항목은 사용자 지정 키보드 단축키, 아이콘 및 도움말 툴팁과 함께 '선택 항목 표시'로 표시되어야 합니다.

FloatSelected_Tooltip.png

Shelf Item Script 기능은 키보드 단축키(T)를 눌러 트리거하거나 Shelf Action 메뉴에서 Shelf Item을 선택하여 현재 선택된 노드를 플로팅하는 기능입니다.

떠 있는 노드는 마우스 왼쪽 버튼을 클릭하여 놓을 때까지 커서를 따라가므로 선택한 노드나 배경을 수동으로 클릭하고 드래그할 필요가 없습니다.

유사한 Python 함수를 구성하는 방법에 대한 자세한 내용은 개발자 가이드 개발자 가이드의 예제 스크립트 에서 확인할 수 있습니다.

선반 항목 아이콘 선택

Shelf Action 메뉴에 표시되는 선반 항목의 아이콘을 바꾸려면 다음 위치에서 Katana 의 기본 아이콘 중 하나를 선택할 수 있습니다. $KATANA_HOME\bin\python\UI4\Resources\Icons

Katana 에서 제공되는 아이콘 중 하나를 선반 항목에 사용하려면 Katana 의 기본 리소스 검색 경로 뒤에 아이콘 경로를 지정해야 합니다. Katana 의 기본 리소스 검색 경로는 $KATANA_HOME\bin\python\UI4\Resources 입니다. 예:

아이콘: Icons\Scenegraph\locator32.png

참고: 다른 사용자 정의 아이콘을 사용하려면 Python 스크립트의 ICON 섹션에 전체 아이콘 경로를 추가해야 합니다.

선반 제거

셸프 액션에서 셸프를 제거하려면 .katana\Shelves 폴더에서 셸프 폴더를 삭제하면 됩니다. Katana 열어둔 상태에서 변경 사항을 확인하거나 드롭다운 셸프에서 셸프를 제거하려면 '셸프 다시 로드'를 클릭하세요. .katana/shelf 파일에 적용된 모든 변경 사항이 Katana 씬에 업데이트됩니다.

맥클립2.png

참고: 선반의 이름을 바꾸려면 .katana/shelf 파일을 찾은 다음 폴더 이름을 [사용자 지정 폴더]로 바꾸면 됩니다.

선반 품목 제거

Shelf 항목을 제거하려면 Shelf 항목 스크립트가 포함된 Python 파일을 삭제하거나 Shelf Actions 팝업 메뉴를 사용하면 됩니다. Katana 에서 Self 항목을 제거하려면 다음을 수행하세요.

선반 작업 메뉴로 이동하여 삭제하려는 선반 항목을 마우스 오른쪽 버튼으로 클릭한 다음 '삭제... '를 선택합니다.

DeleteShelf.png

클릭하면 삭제를 확인하는 팝업 창이 나타납니다. '삭제'를 클릭하면 선반 항목이 삭제됩니다.

DeleteShelfWindow.png

참고: 위의 팝업 창에 표시된 대로 Katana Shelf Item 스크립트를 삭제하지 않고 대신 ' .bak ' 확장자를 추가하여 스크립트가 더 이상 Katana 에 로드되지 않도록 합니다.

필요한 경우 복원할 수 있도록 백업 파일로 저장됩니다.

Shelf_Backup.PNG

Shelf에 다시 추가하려면 해당 위치로 이동하여 ' .bak ' 확장자를 제거하면 Shelf Item Script가 로드되어 사용할 수 있습니다.

참고: .bak을 제거한 후 Shelf Action으로 가서 '추가->다시 로드... '를 사용하면 Katana 세션에 표시할 수 있는 모든 Shelf 항목을 다시 로드합니다.

추가 읽기

Katana 의 Shelf Item Scripts에 대한 개요는 Shelf Item Scripts 사용자 가이드를 참조하세요.

처음으로 선반 항목을 설정하는 경우 Q100401: Katana 에서 선반 항목을 만들어 쉽게 액세스할 수 있는 사용자 정의 Python 스크립트를 제공하는 방법을 참조하세요.

    우리는 문제로 불편을 끼쳐 드려 죄송합니다

    이유를 알려주세요