【发布时间】:2019-08-23 11:24:00
【问题描述】:
我为 Unity 构建了一个名为 world-renderer 的自定义包。这是文件夹结构。
“运行时”里面是我所有的源代码。为了在 Unity 项目中使用它,我将此行添加到该项目的 manifest.json 中。
"com.tamagames.extinction.word-renderer": "file:C:/Users/dbugger/projects/unity/world-renderer",
到目前为止效果很好,但现在我想开始在我的自定义包中使用 ECS。所以我将其命名空间添加到其中一个文件中:
using Unity.Entities;
现在当我返回 Unity 编辑器时,我看到以下错误消息:
CS0234:命名空间“Unity”中不存在类型或命名空间名称“实体”(您是否缺少程序集引用?)
我想我需要将依赖项添加到我的自定义包的package.json,所以我写了更新它是这样的:
{
"name": "com.tamagames.extinction.word-renderer",
"version": "1.0.4",
"displayName": "Extinction - World renderer",
"description": "World renderer for Extinction",
"unity": "2019.1",
"unityRelease": "0b5",
"keywords": [],
"dependencies": {
"com.unity.entities": "0.1.1-preview" // Dependency added
},
"author": {
"name": "Enrique Moreno Tent",
"email": "enriquemorenotent@gmail.com",
"url": "https://enriquemorenotent.com"
}
}
但我仍然不断收到同样的错误。
我做错了什么?
更新
我尝试添加对我的包的程序集的引用,如下所示:
{
"name": "Unity.com.tamagames.extinction.world-renderer-ecs",
"optionalUnityReferences": ["com.unity.entities"],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": []
}
这确实解决了找不到“Unity.Entities”的问题,但是现在,在 Unity 项目中,找不到我的源代码中的类!
【问题讨论】: