패키지 내 스크립트를 어셈블리 정의 파일(.asmdef)에 연결해야 합니다. 어셈블리 정의 파일은 .NET 생태계의 C# 프로젝트와 동일한 Unity 파일입니다. 어셈블리 정의 파일에 동일한 패키지 또는 외부 패키지의 다른 어셈블리에 대한 명시적 레퍼런스를 설정해야 합니다. 자세한 내용은 어셈블리 정의를 참조하십시오.
어셈블리 정의 파일의 명명 및 저장 규칙을 사용하여 컴파일된 어셈블리 파일 이름이 .NET 프레임워크 디자인 가이드라인을 준수하도록 해야 합니다.
에디터별 코드를 루트 에디터 어셈블리 정의 파일 아래에 저장하십시오.
Editor/<company-name>.<package-name>.Editor.asmdef
런타임별 코드를 루트 런타임 어셈블리 정의 파일 아래에 저장하십시오.
Runtime/<company-name>.<package-name>.asmdef
에디터 및 런타임 스크립트에 대한 관련 테스트 어셈블리를 설정하십시오.
Tests/Editor/<company-name>.<package-name>.Editor.Tests.asmdef
Tests/Runtime/<company-name>.<package-name>.Tests.asmdef
더 일반적인 추천 패키지 폴더 레이아웃을 보려면 패키지 레이아웃을 참조하십시오.
이 예시에서 어셈블리 정의 파일은 자체 어셈블리와 패키지 종속성(HDRP)의 일부인 어셈블리에 대한 레퍼런스를 사용합니다.
{
"name": "MyCompany.MyPackageName",
"references": [
"MyCompany.MyPackageName.Tools",
"MyCompany.MyPackageName.Planes",
"Unity.RenderPipelines.HighDefinition.Runtime"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [
{
"name": "com.unity.render-pipelines.high-definition",
"expression": "7.1.0",
"define": "HDRP_7_1_0_OR_NEWER"
},
{
"name": "com.unity.modules.particlesystem",
"expression": "1.0.0",
"define": "USING_PARTICLE_SYSTEM"
}
],
"noEngineReferences": false
}
어셈블리 정의 파일의 구조에 대한 자세한 내용은 어셈블리 정의 파일 포맷을 참조하십시오.