zoukankan      html  css  js  c++  java
  • unitty导出工程嵌入iOS原生工程中出现黑屏,但是模型还是可以扫。

    一般上出现这个问题,其实就是因为两个注意点没有搞清楚。我们分析一下,如果我们的模型或者视屏能够出来但是屏幕还是黑屏的。说明我们的unity的组件其实已经加载出来了。但是供我们交互的那个Layer类并没有按照我们预想的样子工作。断点查看发现是一个空指针0x0。初步怀疑是VuforiaNativeRendererController这个方法异常工作造成的,所以有了以下的解决过程。

    一、如果我们这么写

    const char* AppControllerClassName = "AppDelegate";
    
    int main(int argc, char* argv[])
    {
        @autoreleasepool
        {
            UnityInitTrampoline();
            UnityParseCommandLine(argc, argv);
            
            RegisterMonoModules();
            NSLog(@"-> registered mono modules %p
    ", &constsection);
            RegisterFeatures();
            std::signal(SIGPIPE, SIG_IGN);
            UIApplicationMain(argc, argv, nil, [NSString stringWithUTF8String:AppControllerClassName]);
        }
        return 0;
    }

    我们其实得到的入口代理[UIApplication sharedApplication].delegate所映射并不是我们预想的AppDelegate类名。而是unity那边给我们提供的专门为了与原生交互继承于UnityAppController类的一个子类名字叫VuforiaNativeRendererController的类。其中虽然有帮我们重写了shouldAttachRenderDelegate方法。但是并不能真正实现我们预想的交互效果。

    二、我们换种写法的话,就完美绕过了VuforiaNativeRendererController这个类的干扰。现在画面应该已经出现了。详细请看我的上一篇博客http://www.cnblogs.com/fuunnyy/p/6227740.html。有详细的步骤。

    const char* AppControllerClassName = "AppDelegate";
    
    int main(int argc, char* argv[])
    {
        @autoreleasepool
        {
            UnityInitTrampoline();
            UnityParseCommandLine(argc, argv);
            
            RegisterMonoModules();
            NSLog(@"-> registered mono modules %p
    ", &constsection);
            RegisterFeatures();
            std::signal(SIGPIPE, SIG_IGN);
            NSString *ss = NSStringFromClass([AppDelegate class]);
            UIApplicationMain(argc, argv, nil,ss);
        }
        return 0;
    }
  • 相关阅读:
    CentOS LiveCD LiveDVD DVD 等版本的区别
    解决蛋疼的阿里云单CPU使用率的问题。
    软件工程在北航
    Introduction of Team Member
    proxool的配置
    hibernate配置jndi
    dbcp的配置
    绘制图片
    myeclipse搭建svn插件
    svn搭建
  • 原文地址:https://www.cnblogs.com/fuunnyy/p/6228277.html
Copyright © 2011-2022 走看看