【问题标题】:SixenseInput prefab cause unity to crashSixenseInput 预制件导致统一崩溃
【发布时间】:2015-03-04 07:53:21
【问题描述】:

我有 unity 4.5 并添加了 Sixense 包。 我的场景包括:Sixense 手部预制件和 Sixense 输入预制件。 Sixense 输入预制件有一个名为 SixenseInput.cs 的脚本,它随 Sixense 包一起提供。 问题是当我开始场景时一切正常,但是当我停止场景并重新开始时,统一崩溃并且日志显示 - 访问冲突。 我从检查器中禁用了 SixensInput 脚本,然后 Unity 永远不会崩溃。我能做些什么?!

【问题讨论】:

  • 现在你的问题是这样问的,理论上只有熟悉这个包的人才能回答。为其他开发人员提供更多信息可能是个好主意——这会提高您获得答案的机会。
  • 是的,但是包来自统一资产商店。我没有为它编写代码:) 你想要错误日志吗?
  • 我并不是说你的问题有任何问题;我只是建议没有多少开发人员在这里回答 Unity 3d 问题,甚至更少的开发人员可能知道这个特定的包。我想帮助你,但有了这么多信息,我什至不知道从哪里开始。
  • 您是否尝试过相同的方法,但没有预制件,只有一个包含此脚本的游戏对象?
  • 你有没有试过在完全空的场景中使用这个脚本?

标签: unity3d


【解决方案1】:

我还发现“SixenseUnityPlugin”资产对 Unity 编辑器的反复停止和启动很敏感。原因似乎是捆绑的本机 DLL 崩溃。

我的解决方法是将以下内容添加到文件 SixenseInput.cs:

public static bool isAlreadyQuited = false;

/// <summary>
/// Exit sixense when the application quits.
/// </summary>
void OnApplicationQuit()
{
    if (!isAlreadyQuited)
    {
        isAlreadyQuited = true;
        SixensePlugin.sixenseExit();
    }
}

我不记得 SixensePlugin.cs 中使用的函数“sixenseExit()”之前是否已经存在,但这是必要的行:

[DllImport("sixense", EntryPoint = "sixenseExit")]
public static extern int sixenseExit(); 

【讨论】:

    【解决方案2】:

    Sixense 文件有问题。 我从 Unity 卸载了 Sixense 资产 - 然后我下载并重新安装 它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-12
      • 2013-04-01
      • 1970-01-01
      • 2014-05-07
      • 2015-02-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多