PLUGIN ANATOMY

플러그인 로딩 시점

`.uplugin`은 어떤 모듈을 언제 불러올지 설명하고, `Source` 아래의 Public, Private, Build.cs는 코드 경계와 종속성을 고정합니다.

.uplugin이름, 버전, 설명, 모듈 목록, LoadingPhase
Runtime게임 실행 중 필요한 기능 모듈
Editor에디터 확장 UI와 개발 도구 모듈
Public외부 모듈에 노출되는 API

다른 코드가 include할 수 있는 타입과 인터페이스만 둡니다.

Private구현 세부사항을 숨기는 공간

내부 클래스, 헬퍼, 실제 로직은 여기서 변경 가능하게 유지합니다.

Build.cs종속성과 빌드 규칙

`Core`, `Engine`, `UMG`, `Slate` 같은 모듈 의존성을 선언합니다.

Resources아이콘과 콘텐츠 자산

마켓플레이스 배포나 에디터 표시용 리소스를 분리합니다.

런타임과 에디터 분리

게임 빌드에 에디터 전용 코드가 섞이면 패키징 문제가 생깁니다.

Public 헤더는 작게

노출 범위가 넓을수록 컴파일 의존성과 변경 비용이 커집니다.

엔진 수정 없이 확장

플러그인의 장점은 업그레이드 충돌을 줄이는 데 있습니다.