blender/blender python

클래스 네이밍 컨벤션

monstro 2025. 7. 30. 12:00
728x90
반응형

- 개요

블렌더 파이썬에서 클래스를 작성하는 경우 가급적 지켜야 하는 네이밍 컨벤션에 대해 알아본다

 

1) Operator 클래스

class TEXTTOOL_OT_add_cube(bpy.types.Operator):
    bl_label = "Hello World Operator"
    bl_idname = "tt.add_cube"
    
    def execute(self, context):
         return {'FINISHED'}

 

Operator 클래스의 이름네이밍 컨벤션을 따라 "AddOn이름_OT_동작"의 형태로 작성하는 것이 좋다

또한 Opeator 클래스의 bl_idname 어트리뷰트의 경우 "AddOn의약자_동작"으로 정의해야 한다

 

2) Menu 클래스

class TEXTTOOL_MT_main_menu(bpy.types.Menu):
    bl_label = "Hello World Menu"
    bl_idname = "TEXTTOOL_MT_main_menu"
    
    def draw(self, context):
        pass

 

Menu 클래스의 이름네이밍 컨벤션을 따라 "AddOn이름_MT_메뉴이름"의 형태로 작성하는 것이 좋다

 

3) Panel 클래스

class TEXTTOOL_PT_main_panel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "Hello World Panel"
    bl_idname = "TEXTTOOL_PT_main_panel"
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "object"

    def draw(self, context):
        pass

 

패널 클래스의 이름네이밍 컨벤션을 따라 "AddOn이름_PT_패널이름"의 형태로 작성하는 것이 좋다

 

- 네이밍 컨벤션 사용예시

BPY의 네이밍 컨벤션은 다음과 같이 사용할 수 있다

  • AddOn이름_클래스타입축약어_해당클래스의역할명
  • AddOn이름축약어_클래스타입축약어_해당클래스의역할명

 

위의 예시를 적용하여 다음과 같이 클래스 이름을 작성할 수 있다

예를 들어, TextTool 애드온의 서브 패널 클래스의 이름은 다음과 같이 작성할 수 있다

  • TEXTTOOL_PT_sub_panel
  • TT_PT_sub_panel

 

728x90
반응형

'blender > blender python' 카테고리의 다른 글

프로퍼티 그룹  (0) 2025.08.06
머티리얼 생성과 할당  (0) 2025.07.30
드롭다운 메뉴  (0) 2025.07.30
BPY 코드 작성 시 유용하게 사용할 수 있는 팁  (0) 2025.07.23
register 함수 / unregister 함수 개선  (0) 2025.07.23