【问题标题】:Can't add Orbital script - "The script needs to derive from MonoBehaviour!"无法添加轨道脚本 - “脚本需要从 MonoBehaviour 派生!”
【发布时间】:2020-02-12 01:36:37
【问题描述】:

我正在为 Microsoft HoloLens 1 使用 Unity 3D 进行开发。我正在尝试将混合现实工具包中的 Orbital 脚本添加到游戏对象,但无论我做什么,我都会不断收到此错误消息:

“无法添加脚本行为 ScreenSpaceMousePointer。脚本需要从 MonoBehaviour 派生!”

我不明白为什么会收到此消息,因为我正在尝试添加 Orbital,而不是 ScreenSpaceMousePointer。有没有办法解决这个问题?

编辑:为了进一步了解,我正在尝试在 HoloLens 显示屏的右下角粘贴一个带有小地图的直立平面,这样它就可以跟随用户无论他们转过头来(很像小地图的外观视频游戏)。

【问题讨论】:

  • 您的文件是否名为Orbital(在资产中)、Orbital.cs(在PC 的文件浏览器中)和名为public class Orbital : MonoBehaviour 的类?您使用的是哪个版本的 MRTK?

标签: unity3d hololens mrtk


【解决方案1】:

Orbital 继承自 Solver,而 Solver 继承自 MonoBehaviour。因此,您应该将其添加到 GameObject 中。目前尚不清楚为什么在没有更多信息的情况下出现该错误消息。

您使用的是什么版本的 MRTK/Unity?

你可以通过inspector中的“AddComponent”创建一个立方体并添加轨道吗?

您可以在资产窗口中搜索轨道脚本并将其拖到检查器中的简单立方体上吗?

很遗憾,我无法解决您的问题。您还可以尝试查看 SolverExamples 统一场景。

【讨论】:

  • 我正在使用 Unity 版本 2018.4.15f1(我正在处理一个小组项目,这是我们团队决定在项目中适应不同功能的版本)。我拥有的 MRTK 版本是 2.0.0。由于某种原因,我无法在添加组件检查器中找到 Orbital。也许我在将 MRTK 导入我的 Unity 项目时出错了?当我将 Orbital 脚本从我的资产窗口拖到我的游戏对象上时,会出现上述错误消息。
  • 建议您先备份您的项目,然后按照此文档(microsoft.github.io/MixedRealityToolkit-Unity/Documentation/…) 将 MRTK 升级到最新版本。如果您仍有问题,请提供有关您的应用程序的更多详细信息,例如 MVCE(stackoverflow.com/help/minimal-reproducible-example) 和重现问题的步骤。
【解决方案2】:

请出示此脚本。
头一定是这样的:
class Orbital: MonoBehavior {
并且文件名必须是 Orbital.cs

您可以创建此文件并放入您需要的代码,但重命名类和文件以避免重复的类名。

您的项目中是否有错误?这通常发生在您收到的消息中。

【讨论】:

  • 我不希望对文件进行更改,因为它是由 Microsoft 作为混合现实工具包的一部分编写的。轨道脚本不是我自己的。
  • 我不知道混合现实,但我知道 Unity。 Orbital 类的问题或项目中的另一个错误,此脚本无法编译。正如特洛伊所说,无论如何我们都需要更多信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多