마야와 파이썬을 활용한 VFX 프로그래밍 50가지 예제 – 14. 마야 UI 요소 제어하기



마야와 파이썬을 활용한 VFX 프로그래밍 50가지 예제 – 14. 마야 UI 요소 제어하기

마야 UI 요소 제어하기

마야에서 UI 요소를 사용하여 사용자와 상호 작용하는 프로그램을 만들어 보겠습니다. 이를 통해 사용자 정의 도구, 스크립트 런처 또는 작업 흐름을 향상시킬 수 있습니다. 이 블로그 글에서는 초보자를 위해 마야 UI 요소를 만드는 방법을 상세히 설명합니다.

 

단계 1: UI 윈도우 생성하기

마야에서 UI를 만들려면 먼저 UI 윈도우를 생성해야 합니다. 다음 코드를 사용하여 UI 윈도우를 만들 수 있습니다.

import maya.cmds as cmds

# 윈도우 생성
window_name = "myWindow"
if cmds.window(window_name, exists=True):
    cmds.deleteUI(window_name)

cmds.window(window_name, title="마야 UI 요소 제어 예제", widthHeight=(300, 150))

 

단계 2: UI 패널 생성하기

다음으로 UI 윈도우 내에 UI 패널을 생성합니다. UI 패널은 다른 UI 요소를 그룹화하고 배치하는 데 사용됩니다.

# UI 패널 생성
cmds.columnLayout(adjustableColumn=True)

 

단계 3: 버튼 추가하기

이제 UI 패널에 버튼을 추가해 보겠습니다. 아래 코드를 사용하여 버튼을 만들고 클릭 이벤트에 대한 콜백 함수를 정의할 수 있습니다.

# 버튼 생성 및 콜백 함수 정의
def my_button_callback(*args):
    cmds.confirmDialog(title="알림", message="버튼이 클릭되었습니다!", button=["확인"])

cmds.button(label="클릭", command=my_button_callback)

단계 4: UI 윈도우 표시하기

마지막으로 UI 윈도우를 표시합니다.

# 윈도우 표시
cmds.showWindow(window_name)

 

코드 실행하기

마야의 스크립트 에디터에 위 코드를 복사하여 실행하면 UI 윈도우가 표시되고 “클릭” 버튼을 클릭할 수 있게 됩니다. 버튼을 클릭하면 알림 대화 상자가 표시됩니다.

이제 이 코드를 활용하여 원하는 UI 요소를 만들고 마야 프로젝트를 개선할 수 있습니다. 이 예제는 UI 제어의 기초를 설명한 것이며, 필요에 따라 더 복잡한 UI를 만들고 사용자와 상호 작용할 수 있는 기능을 추가할 수 있습니다.

 

전체 코드

import maya.cmds as cmds

# 윈도우 생성
window_name = "myWindow"
if cmds.window(window_name, exists=True):
    cmds.deleteUI(window_name)

cmds.window(window_name, title="마야 UI 요소 제어 예제", widthHeight=(300, 150))

# UI 패널 생성
cmds.columnLayout(adjustableColumn=True)

# 버튼 생성 및 콜백 함수 정의
def my_button_callback(*args):
    cmds.confirmDialog(title="알림", message="버튼이 클릭되었습니다!", button=["확인"])

cmds.button(label="클릭", command=my_button_callback)

# 윈도우 표시
cmds.showWindow(window_name)