프로젝트 플러그인과 Engine 플러그인의 차이
16강. 프로젝트 플러그인과 Engine 플러그인의 차이
1. 이번 강의에서 해결할 문제
재사용한다는 이유로 개발 중인 플러그인을 Engine 설치 폴더에 넣으면 프로젝트 Git에 포함되지 않고 팀원마다 다른 버전이 로드됩니다. Engine 업데이트나 재설치 때 파일이 사라지며, 관리자 권한과 공용 설치의 변경 위험도 커집니다.
2. 학습 목표
3. 핵심 개념
Project Plugin은 <Project>/Plugins/<PluginName>/에 있고 해당 프로젝트의 버전 관리·빌드와 함께 움직입니다. Engine Plugin은 <Engine>/Engine/Plugins/ 아래에서 여러 프로젝트가 발견할 수 있지만 Engine 설치와 운영 정책에 결합됩니다.
재사용 가능성과 설치 범위는 다릅니다. Project Plugin도 다른 프로젝트에 복사·패키징할 수 있으며, 오히려 원본과 소비 프로젝트가 어떤 버전을 사용하는지 명시하기 쉽습니다.
4. 단계별 실습
| 기준 | Project Plugin | Engine Plugin |
|---|---|---|
| Git 추적 | 프로젝트와 함께 명확 | Engine 설치와 분리 필요 |
| 팀 버전 고정 | Commit으로 고정 | 별도 배포 정책 필요 |
| Engine 업데이트 | 프로젝트별 이식 검증 | 설치 전체 영향 |
| 개발 중 수정 | 안전한 기본값 | 공용 설치 오염 위험 |
이번 과정의 두 Plugin은 모두 Project Plugin으로 개발합니다.
ArchitectureLab/Plugins/ReusableInteraction/
ArchitectureLab/Plugins/DataGuard/
MigrationProbe/Plugins/ReusableInteraction/
MigrationProbe/Plugins/DataGuard/
최종 이식은 원본 프로젝트의 Binaries, Intermediate, Saved를 복사하지 않고 Source·Descriptor·Config·필요한 Content·Resources만 전달합니다. Precompiled Binary 배포는 대상 Engine Minor·Platform·Configuration 호환 정책을 별도로 요구합니다.
5. 코드가 동작하는 이유
PluginManager는 Engine과 Project Plugin 검색 경로에서 Descriptor를 발견합니다. Project 위치는 기능이 덜 재사용 가능하다는 뜻이 아니라 해당 프로젝트가 Plugin 버전을 소유한다는 뜻입니다. 별도 저장소나 패키지 관리 전략은 조직 규모에 따라 추가할 수 있습니다.
6. 자주 하는 실수와 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
프로젝트 플러그인과 Engine 플러그인의 차이 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.