Version: 2021.3
버전 지정
법적 요구 사항 충족

어셈블리 정의 및 패키지

패키지 내 스크립트는 반드시 어셈블리 정의 파일(.asmdef)과 연결해야 합니다. 어셈블리 정의 파일은 .NET 에코시스템의 C# 프로젝트에 대한 Unity의 대응 버전입니다. 어셈블리 정의 파일의 명시적 레퍼런스를 동일한 패키지 또는 외부 패키지에 있는 다른 어셈블리로 설정해야 합니다. 자세한 내용은 어셈블리 정의를 참조하십시오.

어셈블리 정의 파일의 명명 및 저장 규칙을 사용하여 컴파일된 어셈블리 파일 이름이 .NET 프레임워크 디자인 가이드라인을 준수하도록 해야 합니다.

  • 에디터별 코드를 루트 에디터 어셈블리 정의 파일 아래에 저장하십시오.

    Editor/[YourCompany].[YourPackageName].Editor.asmdef

  • 런타임별 코드를 루트 런타임 어셈블리 정의 파일 아래에 저장하십시오.

    Runtime/[YourCompany].[YourPackageName].Runtime.asmdef

  • 에디터 및 런타임 스크립트에 대한 관련 테스트 어셈블리를 설정하십시오.

    Tests/Editor/[YourCompany].[YourPackageName].Editor.Tests.asmdef

    Tests/Runtime/[YourCompany].[YourPackageName].Runtime.Tests.asmdef

추천 패키지 폴더 레이아웃에 대한 일반적인 모습은 패키지 레이아웃을 참조하십시오.

예제 파일

이 예제에서 어셈블리 정의 파일은 다음과 같이 패키지 종속성의 일부인 어셈블리뿐만 아니라 자체 어셈블리에 레퍼런스를 사용합니다(HDRP).

{
    "name": "[YourCompany].[YourPackageName]",
    "references": [
        "[YourCompany].[YourPackageName].Tools",
        "[YourCompany].[YourPackageName].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
}

어셈블리 정의 파일 구조에 대한 자세한 내용은 어셈블리 정의 파일 포맷을 참조하십시오.

버전 지정
법적 요구 사항 충족