이 섹션에서는 Unity 패키지 관리자 기능에 대한 다양한 개념들을 설명합니다.
각 패키지마다 여러 버전을 이용할 수 있으며, 라이프사이클을 따라 해당 패키지의 변경 사항을 표시합니다. 개발자는 패키지를 업데이트할 때마다 새로운 버전 숫자를 부여합니다. 변경된 패키지 버전을 확인하면 유의적 버전 규칙에 따라 업데이트 내용이 대규모 변경(메이저)인지, 이전 버전과의 호환성 지원(마이너)인지, 아니면 단순한 버그 수정(패치)인지 파악할 수 있습니다.
특정 패키지에 이용 가능한 버전 리스트를 보려면 특정 버전 찾기를 참조하십시오.
매니페스트 파일에는 다음의 두 가지 타입이 있습니다.
manifest.json
)에는 패키지 관리자가 올바른 패키지를 찾고 로드하기 위한 정보(예: 종속성으로 선언된 버전 및 패키지 리스트)가 저장됩니다.package.json
)에는 특정 패키지에 관한 정보, 그리고 해당 패키지에 필요한 버전 및 패키지 리스트가 저장됩니다.두 파일 모두 JSON(JavaScript Object Notation) 구문을 사용합니다.
Unity의 패키지 관리자 도메인에서 패키지 레지스트리는 각 패키지 버전에 대한 패키지 콘텐츠 및 정보(메타데이터)를 저장하는 서버입니다. Unity는 배포할 수 있는 공식 패키지의 중앙 레지스트리를 유지합니다. 기본적으로 모든 프로젝트는 공식 Unity 패키지 레지스트리를 사용하지만, 레지스트리를 추가하여 개발을 진행하면서 프라이빗 패키지를 배포하거나 커스텀 패키지를 스테이징할 수 있습니다.
Unity 패키지 관리자는 전체 패키지 시스템을 관리하는 툴입니다. 주로 수행하는 작업은 다음과 같습니다.
Unity 패키지 관리자는 특정 컴퓨터나 기기의 모든 프로젝트가 아니라 프로젝트별로 샘플, 툴, 에셋을 설치합니다. 또한 읽기 전용 전역 캐시를 사용하여 다운로드한 패키지 메타데이터 및 콘텐츠를 저장합니다. 프로젝트에서 설치가 끝나면 Unity는 프로젝트의 다른 에셋처럼 패키지 에셋을 처리합니다. 단, 이러한 에셋이 패키지 폴더 내에 저장되고 변경 불가 인 경우는 예외입니다. 로컬 및 내장 패키지 소스의 콘텐츠만 영구적으로 변경할 수 있습니다.
소스는 패키지의 출처를 설명합니다.
소스 | 설명 |
---|---|
레지스트리 | Unity 패키지 관리자는 요청 시 대부분의 패키지를 패키지 레지스트리 서버에서 컴퓨터의 전역 캐시로 다운로드합니다. 이러한 패키지는 변경이 불가능하므로 프로젝트에 사용할 수 있지만, 패키지를 수정하거나 패키지 매니페스트를 변경할 수는 없습니다. |
Built-in | 이 패키지를 이용하면 터레인 물리, 애니메이션 등과 같은 Unity 기능을 활성화하거나 비활성화할 수 있습니다. 이 패키지는 변경이 불가능합니다. 자세한 내용은 빌트인 패키지를 참조하십시오. |
Embedded | 프로젝트 폴더에 저장된 패키지는 모두 내장 패키지입니다. 이 소스는 커스텀 상태에 해당합니다. 이는 일반적으로 커스텀 패키지 개발을 시작할 때 새로운 패키지에 필요한 모든 스크립트, 라이브러리, 샘플 및 기타 에셋을 프로젝트 폴더의 하위 폴더에 저장하기 때문입니다. |
Local | 컴퓨터의 모든 폴더에서 패키지를 설치할 수 있습니다(예: 개발 저장소를 로컬로 클로닝한 경우). |
Tarball (local) | 컴퓨터의 타르볼 파일에서 패키지를 설치할 수 있습니다. 패키지 관리자는 타르볼에서 패키지를 추출하여 캐시에 저장합니다. 하지만 이 패키지는 로컬 폴더에서 설치하는 것과 달리 변경이 불가능합니다. |
Git | 패키지 관리자는 패키지 레지스트리 서버가 아니라 Git 저장소에서 직접 Git 기반 패키지를 설치합니다. |
패키지에 대한 패키지 매니페스트를 편집하려면 패키지 검사를 참조하십시오.
Package Manager 창에는 이러한 일부 소스에 해당하는 태그가 표시됩니다. 자세한 내용은 태그를 참조하십시오.