从 Unity Editor 2019.1 版本开始,您可以将示例添加到包中。示例可能是一段示例代码、一些着色器和纹理、一些动画,或者您通常可以在项目的 Assets 文件夹下找到的任何其他文件。
当您打开 Package Manager 窗口并选择包含示例的包时,包中每个示例的详细信息面板中将出现导入 (Import)按钮。当用户选中导入 (Import) 时,Package Manager 会将该示例的整个子文件夹结构复制到项目的 Assets 文件夹下。
要将示例添加到您的资源包中,请执行以下操作:
将资源文件或 C# 代码示例文件放在 Samples~ 文件夹下。一个包中可以有多个示例;Samples~ 文件夹的每个子文件夹都有一个示例。
注意:波浪字符 (~) 会告诉 Unity 忽略 Samples~ 文件夹中的内容。此类文件夹不会被 .meta 文件跟踪。
在 package.json 清单文件中的 samples 数组下为每个示例添加一个 JSON 对象。
您可以在包的 Samples~ 文件夹的子文件夹下添加示例资源。例如,一个包含着色器示例的包可能如下所示:
MyPackage
├── package.json
└── Samples~
├── SamplesHDRP
│ ├── Textures
│ | ├── MossyRock.bmp
│ | └── SandyRock.bmp
│ └── Shader
│ ├── Lit Texture Blend HDRP.ShaderGraph
│ └── Lit Vertex Color HDRP.ShaderGraph
└── SamplesStandard
│ ├── Textures
│ | ├── MossyRock.bmp
│ | └── SandyRock.bmp
│ └── Shader
│ ├── StandardTextureBlend.shader
│ └── StandardVertexColor.shader
└── SamplesUniversalRP
├── Textures
| ├── MossyRock.bmp
| └── SandyRock.bmp
└── Shader
├── Lit Texture Blend URP.ShaderGraph
└── Lit Vertex Color URP.ShaderGraph
将名为 samples 的 JSON 数组添加到 package.json 文件。对于每个示例,将至少包含 displayName 和 path 的 JSON 对象添加到示例文件夹:
| 键 | 描述 |
|---|---|
displayName |
该示例的名称,即它在 Package Manager 窗口的包详细信息中所显示的名称。 |
description |
示例演示或包含的内容的简要说明。仅用于包清单。说明不会出现在界面中,即使是作为工具提示。 |
path |
从 Samples~ 文件夹到该示例的根文件夹的路径。 |
例如,使用与示例文件的位置一例相同的结构,samples 部分类似于:
{
"samples": [
{
"displayName": "HDRP Shaders",
"description": "Contains sample shaders for the High Definition render pipeline",
"path": "Samples~/SamplesHDRP"
},
{
"displayName": "URP Shaders",
"description": "Contains sample shaders for the Universal render pipeline",
"path": "Samples~/SamplesUniversalRP"
},
{
"displayName": "Standard RP Shaders",
"description": "Contains sample shaders for the Standard render pipeline",
"path": "Samples~/SamplesStandard"
}
]
}