程序集定义和程序集定义引用资产是JSON文件。您可以使用 检查器一个Unity窗口,显示有关当前选定的GameObject、资产或项目设置的信息,允许您检查和编辑值。 更多信息
参考词汇表 窗口中的资产文件进行编辑,但您还可以使用外部工具修改JSON内容。
程序集定义是一个具有以下字段的JSON对象
可选的。默认为false。见允许“不安全”代码。
"allowUnsafeCode" : true
可选的。默认为true。见自动引用。
"autoReferenced": false
可选的。作为约束的符号。可以为空。见定义约束。
"defineConstraints": [
"UNITY_2019",
"UNITY_INCLUDE_TESTS"
]
可选的。要排除的平台名称字符串或空数组。如果
"includePlatforms": [],
"excludePlatforms": [
"iOS",
"macOSStandalone",
"tvOS"
]
可选的。要包含的平台名称字符串或空数组。如果
"includePlatforms": [
"Android",
"LinuxStandalone64",
"WebGL"
],
"excludePlatforms": []
必需的。任何
"name" : "MyAssemblyName"
可选的。默认为false。见无引擎引用。
"noEngineReferences": false
可选的。在Unity的早期版本中,此字段序列化了 Unity引用:测试程序集 选项,用于指定程序集为测试程序集。从Unity 2019.3开始,此选项不再显示。字段仍受支持,但如果资产在新版本的Unity编辑器中重新序列化,则字段将替换为等效的程序集引用。
有关测试程序集的更多信息,请参阅创建测试程序集。
"optionalUnityReferences": [
"TestAssemblies"
]
可选的。如果
见[覆盖引用]。
"overrideReferences": true
可选的。包括扩展名的引用DLL库的文件名,但不包括其他路径元素。可以为空。除非您将
见程序集引用。
"overrideReferences": true,
"precompiledReferences": [
"Newtonsoft.Json.dll",
"nunit.framework.dll"
]
可选。引用使用组件定义资产创建的其他组件。您可以使用组件定义资产文件的GUID或组件的名称(由组件定义的名称字段定义)。必须使用相同的格式为列表中的所有引用。可以为空。
您可以使用AssetDatabase.AssetPathToGUID函数来检索资产的GUID。(GUID也是每个资产关联元数据的一部分。)
请注意,编辑器在组件定义检查器中显示一个使用GUID选项。该选项未在相关的JSON文件中进行序列化。相反,选择是通过文件中找到的引用形式推断出来的。
参见引用另一个组件。
使用GUID
"references": [
"GUID:17b36165d09634a48bf5a0e4bb27f4bd",
"GUID:b470eee7144904e59a1064b70fa1b086",
"GUID:2bafac87e7f4b9b418d9448d219b01ab",
"GUID:27619889b8ba8c24980f49ee34dbb44a",
"GUID:0acc523941302664db1f4e527237feb3"
]
使用组件名称
"references": [
"Unity.CollabProxy.Editor",
"AssemblyB",
"UnityEngine.UI",
"UnityEngine.TestRunner",
"UnityEditor.TestRunner"
]
可选。包含为每个版本定义的对象。该对象有三个字段
参见版本定义。
"versionDefines": [
{
"name": "com.unity.ide.vscode",
"expression": "[1.7,2.4.1]",
"define": "MY_SYMBOL"
},
{
"name": "com.unity.test-framework",
"expression": "[2.7.2-preview.8]",
"define": "TESTS"
}
]
对于其他组件定义和 includePlatforms 使用组件名称进行引用
{
"name": "BeeAssembly",
"references": [
"Unity.CollabProxy.Editor",
"AssemblyB",
"UnityEngine.UI",
"UnityEngine.TestRunner",
"UnityEditor.TestRunner"
],
"includePlatforms": [
"Android",
"LinuxStandalone64",
"WebGL"
],
"excludePlatforms": [],
"overrideReferences": true,
"precompiledReferences": [
"Newtonsoft.Json.dll",
"nunit.framework.dll"
],
"autoReferenced": false,
"defineConstraints": [
"UNITY_2019",
"UNITY_INCLUDE_TESTS"
],
"versionDefines": [
{
"name": "com.unity.ide.vscode",
"expression": "[1.7,2.4.1]",
"define": "MY_SYMBOL"
},
{
"name": "com.unity.test-framework",
"expression": "[2.7.2-preview.8]",
"define": "TESTS"
}
],
"noEngineReferences": false
}
对于其他组件定义和 excludePlatforms 使用GUID进行引用
{
"name": "BeeAssembly",
"references": [
"GUID:17b36165d09634a48bf5a0e4bb27f4bd",
"GUID:b470eee7144904e59a1064b70fa1b086",
"GUID:2bafac87e7f4b9b418d9448d219b01ab",
"GUID:27619889b8ba8c24980f49ee34dbb44a",
"GUID:0acc523941302664db1f4e527237feb3"
],
"includePlatforms": [],
"excludePlatforms": [
"iOS",
"macOSStandalone",
"tvOS"
],
"allowUnsafeCode": false,
"overrideReferences": true,
"precompiledReferences": [
"Newtonsoft.Json.dll",
"nunit.framework.dll"
],
"autoReferenced": false,
"defineConstraints": [
"UNITY_2019",
"UNITY_INCLUDE_TESTS"
],
"versionDefines": [
{
"name": "com.unity.ide.vscode",
"expression": "[1.7,2.4.1]",
"define": "MY_SYMBOL"
},
{
"name": "com.unity.test-framework",
"expression": "[2.7.2-preview.8]",
"define": "TESTS"
}
],
"noEngineReferences": false
}
组件定义引用是一个JSON对象,具有以下字段
必需。要引用的组件定义。参见组件定义引用。
您可以使用组件的名称或资产的GUID来引用组件定义资产。您可以使用AssetDatabase.AssetPathToGUID函数来检索资产的GUID。(GUID也是每个资产关联元数据的一部分。)
使用组件名称
{
"reference": "AssemblyA"
}
使用组件定义资产的GUID
{
"reference": "GUID:f4de40948f4904ecb94b59dd38aab8a1"
}
参见创建组件定义引用资产。