본문 바로가기

프로그래밍/MaxSDK

[MAXSDK] 플러그인 아키텍처 개관

원문 : Max SDK 도움말. Plug-In Architecture Overview.

플러그인 아키텍처 개관

SDK 는 C++ 클래스와 관련 루틴의 집합이다. 플러그인을 작성하는 것은 클래스로부터 오브젝트를 생성하고 플러그인과 시스템 사이의 대화를 가능하게 하기 위한 메서드들을 구현하는 것을 포함한다. 제공된 SDK 클래스를 사용하여, 당신은 SDK 프레임워크로 새로운 클래스를 일관되게 통합할 수 있다.

대부분의 SDK 클래스들은 세 개의 추상 기저 클래스를 상속한다. 이들 세 클래스들의 루트 클래스는 Animatable 이라 불린다. 그것은 대부분의 애니메이션 및 트랙 뷰 관련 메서드들을 정의한다. Animatable 로부터 상속된 것은 ReferenceMaker 이다. 이 클래스는 당신으로 하여금 다른 오브젝트에 대한 참조를 만들 수 있도록 해 준다. ReferenceMarker 를 상속한 것은 ReferenceTarget 이다. 참조는 씬 내의 오브젝트 사이의 두 가지 방식의 연결이다. 그것은 ReferenceMaker 와 ReferenceTarget 사이에 의존성에 대한 공식적 기록을 생성한다. 그것의 주요 함수는 참조 대상으로 하여금 어떠한 방식으로 그것이 변경되었는 지를 자신의 의존 참조 마커에게 알려줄 수 있도록 해 준다.

Animatable 을 상속하지 않은 클래스들은 주로 애니메이션과 관련없는 것들이다. 예를 들어 인터페이스 클래스는 플러그인에 대해 3ds 맥스 자체에 있는 함수를 호출하도록 하는 메커니즘을 제공한다. 이 인터페이스 클래스는 Animatable 을 상속하지 않는다.

다음 다이어그램은 SDK 의 필수 공용 클래스들의 상속 트리를 보여 준다. (부모를 가지지 않는) 기저 클래스들은 제일 위쪽에 있으며, 상속 계층은 아래쪽과 오른쪽으로 진행된다.

 




[출처] - 라이푸님의 http://blog.naver.com/lifeisforu 네이버 블로그