我们接着上一篇的教程:
1、实例话一个NVisionXR控制器
在项目中创建一个 Controller, 继承 NV3DViewController
在 NVisionController.h 中添加头文件 #import"NV3DViewController.h" , 如下图
接下来,实例话该场景, 大家根据自己的项目需求找地方实例话场景,该例子就直接设置成主场景。
2、实例话NVAppDirector
NVAppDirector 是导演类,是一个单例,它贯穿整个AR 场景,需要优先调用,设置代码如下图
3、实例话Vuforia句柄
添加代码下图,因为开启了AR 功能,所以需要实例话Vuforia 句柄,Vufora 的key 和识别图需要到Vufora 后台申请操作,Vufora
申请地址:https://developer.vuforia.com/
图中代码:
// 导演类,贯穿整个AR场景,必须最先调用
[[NVAppDirector sharedNVAppDirector] init:self.context_node];
// 设置需要开启的插件类型,本例开启了ar插件,插件名字可以随意取,但是要唯一。
[[NVAppDirector sharedNVAppDirector] addPlugin:AR_INPUT pluginName:@"AR_Plugin"];
// 注册vuforai
_vuforiaWrapper = [[NV3DVuforiaWrapper alloc] initWithLicenceKey:@"ATLYsJz/////AAAAGTj+TZjZ8Ulgu0mjMsQS+iJfhw
BojjIc/xu2j9sFOb3O7UGUQr81lGCUXFXkjhzxzOh/oS+AAHaS2sIFAXq7m8+zWFHN8vHsDWK1xDiqVhzEU0regkqV+CBQkf04dITx2QJPCitXlIt
xUAvRlvS+9ZqQlohvsKk8VwJE54YAKCQ7d+9NZXoUt5E6/6QUu8m/1TQ+mzLqa6QJCVGjgUL2fxLMs2cDlO3d1pDF/6HC8bqQ7eZDjbx6Yt+HdgUF
YdMeVyD+lv7i9ncoYpBAXQq75k9DbLnOySOBBq/NpNoDIUH3bs5dLQ1EGHp7dYTOBuT4exyvtj4NABgfCQP6JQKfxknQwgQRF8SoQpPAF6tQhdfE
"];
// 添加需要识别的对象路径,可以有多个识别对象,对象建议放在UserRes.bundle里,便于引擎管理资源。
[ _vuforiaWrapper addDataSet:@"UserRes.bundle/StonesAndChips.xml"];
// 激活当前需要识别的对象路径
[ _vuforiaWrapper setActiveDataSet:@"UserRes.bundle/StonesAndChips.xml"];
4、运行项目
运行项目后发现闪退,查看了闪退日志,发现是没在info.plist 设置。
在项目修改下info.plist 如下图
再次运行项目,可以看到vuforia 的摄像机开起来了。
到这里,就已经完成了场景的基本配置,本章节的内容已经结束,下一章节就可以教大家如何在ar 场景中渲染一个立方体。
欢迎联系:
1、实例话一个NVisionXR控制器
在项目中创建一个 Controller, 继承 NV3DViewController
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_53af836dfe4adb0.jpg)
在 NVisionController.h 中添加头文件 #import"NV3DViewController.h" , 如下图
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_a66a2df2bc202e0.jpg)
接下来,实例话该场景, 大家根据自己的项目需求找地方实例话场景,该例子就直接设置成主场景。
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_a90170aecb95d63.jpg)
2、实例话NVAppDirector
NVAppDirector 是导演类,是一个单例,它贯穿整个AR 场景,需要优先调用,设置代码如下图
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_eb3101d3194da1d.jpg)
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_1118530e68ec89b.jpg)
3、实例话Vuforia句柄
添加代码下图,因为开启了AR 功能,所以需要实例话Vuforia 句柄,Vufora 的key 和识别图需要到Vufora 后台申请操作,Vufora
申请地址:https://developer.vuforia.com/
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_0cd0321f1ccf701.jpg)
图中代码:
// 导演类,贯穿整个AR场景,必须最先调用
[[NVAppDirector sharedNVAppDirector] init:self.context_node];
// 设置需要开启的插件类型,本例开启了ar插件,插件名字可以随意取,但是要唯一。
[[NVAppDirector sharedNVAppDirector] addPlugin:AR_INPUT pluginName:@"AR_Plugin"];
// 注册vuforai
_vuforiaWrapper = [[NV3DVuforiaWrapper alloc] initWithLicenceKey:@"ATLYsJz/////AAAAGTj+TZjZ8Ulgu0mjMsQS+iJfhw
BojjIc/xu2j9sFOb3O7UGUQr81lGCUXFXkjhzxzOh/oS+AAHaS2sIFAXq7m8+zWFHN8vHsDWK1xDiqVhzEU0regkqV+CBQkf04dITx2QJPCitXlIt
xUAvRlvS+9ZqQlohvsKk8VwJE54YAKCQ7d+9NZXoUt5E6/6QUu8m/1TQ+mzLqa6QJCVGjgUL2fxLMs2cDlO3d1pDF/6HC8bqQ7eZDjbx6Yt+HdgUF
YdMeVyD+lv7i9ncoYpBAXQq75k9DbLnOySOBBq/NpNoDIUH3bs5dLQ1EGHp7dYTOBuT4exyvtj4NABgfCQP6JQKfxknQwgQRF8SoQpPAF6tQhdfE
"];
// 添加需要识别的对象路径,可以有多个识别对象,对象建议放在UserRes.bundle里,便于引擎管理资源。
[ _vuforiaWrapper addDataSet:@"UserRes.bundle/StonesAndChips.xml"];
// 激活当前需要识别的对象路径
[ _vuforiaWrapper setActiveDataSet:@"UserRes.bundle/StonesAndChips.xml"];
4、运行项目
运行项目后发现闪退,查看了闪退日志,发现是没在info.plist 设置。
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_c94e8e864dc527c.jpg)
在项目修改下info.plist 如下图
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_3caf9b846764bc2.jpg)
再次运行项目,可以看到vuforia 的摄像机开起来了。
![点击查看原图](http://www.arvrschool.com/attachment/thumb/1803/thread/111_3513_2da01fa70e1b867.jpg)
到这里,就已经完成了场景的基本配置,本章节的内容已经结束,下一章节就可以教大家如何在ar 场景中渲染一个立方体。
欢迎联系:
- 联系方式: +86 18801341080
- 电子邮箱: [email protected]
- 网址:http://www.nvisionxr.com/
- QQ群:416802300
图片:WechatIMG153.png[删除]
![点击查看原图](http://www.arvrschool.com/attachment/1803/thread/111_3513_64e4cf8a3176191.png)