다음은 커스텀 패키지에 대한 권장 패키지 레이아웃입니다.
<package-root>
├── package.json
├── README.md
├── CHANGELOG.md
├── LICENSE.md
├── Third Party Notices.md
├── Editor
│ ├── <company-name>.<package-name>.Editor.asmdef
│ └── EditorExample.cs
├── Runtime
│ ├── <company-name>.<package-name>.asmdef
│ └── RuntimeExample.cs
├── Tests
│ ├── Editor
│ │ ├── <company-name>.<package-name>.Editor.Tests.asmdef
│ │ └── EditorExampleTest.cs
│ └── Runtime
│ ├── <company-name>.<package-name>.Tests.asmdef
│ └── RuntimeExampleTest.cs
├── Samples~
│ ├── SampleFolder1
│ ├── SampleFolder2
│ └── ...
└── Documentation~
└── <package-name>.md
많은 공식 Unity 패키지에서도 이 구조를 구현합니다.
위치 | 설명 |
---|---|
package.json |
패키지 종속성 및 기타 메타데이터를 정의하는 패키지 매니페스트입니다. |
README.md |
Developer package documentation. This is generally documentation to help developers who want to change the package or push a new change on the package’s main branch. |
CHANGELOG.md |
Description of package changes in reverse chronological order. It’s good practice to use a standard format, like Keep a Changelog. |
LICENSE.md |
패키지 라이선스 텍스트가 들어 있습니다. 대개 패키지 관리자는 선택된 SPDX 리스트 웹사이트에서 텍스트를 복사합니다. |
Third Party Notices.md |
Contains information that’s required to meet legal requirements. |
Editor/ |
Editor platform-specific Assets folder. Unlike Editor folders under Assets, this is only a convention and doesn’t affect the Asset import pipeline. Refer to Assembly definition and packages to properly configure Editor-specific assemblies in this folder. |
Runtime/ |
Runtime platform-specific Assets folder. This is only a convention and doesn’t affect the Asset import pipeline. Refer to Assembly definition and packages to properly configure runtime assemblies in this folder. |
Tests/ |
패키지에 모든 포함된 테스트를 저장하는 폴더입니다. |
Tests/Editor/ |
Editor platform specific tests folder. Refer to Assembly definition and packages to properly configure Editor-specific test assemblies in this folder. |
Tests/Runtime/ |
Runtime platform specific tests. Refer to Assembly definition and packages to properly configure runtime test assemblies in this folder. |
Samples~/ |
패키지에 모든 포함된 샘플을 저장하는 폴더입니다. |
Documentation~ |
패키지에 모든 포함된 문서를 저장하는 폴더입니다. |
Unity ignores the contents of any folder name that ends with the ~
character, and doesn’t track them with .meta
files. However, you need to include .meta
files for the Editor
, Runtime
, and Tests
folders and their contents in order for them to work properly. For more information on .meta
files and how Unity uses them for tracking, refer to Asset workflow.