1.体验AR 硬件要求
Xcode版本 :Xcode9 以及以上
iOS系统:iOS11以及以上
macOS系统:10.12.4以及以上
iOS设备:phone6s 以及以上
2.AR 效果初体验
打开Xcode 创建工程
Xcode会默认选择SceneKit
SceneKit 是3D 效果 是一种基于3D场景来实现增强现实
SpriteKit 是2D 效果 是一种基于2D场景来实现增强现实
3.AR创建完成 会默认可以实现小飞机的3D效果
- (void)viewDidLoad {
[super viewDidLoad];
// 代理方法
self.sceneView.delegate = self;
// 是否显示数据
self.sceneView.showsStatistics = YES;
// 加载3D图片模型
SCNScene *scene = [SCNScene sceneNamed:@"art.scnassets/ship.scn"];
// 设置scene
self.sceneView.scene = scene;
}
(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];// 创建一个配置
ARWorldTrackingSessionConfiguration *configuration = [ARWorldTrackingSessionConfiguration new];// 运行这个配置
[self.sceneView.session runWithConfiguration:configuration];
}(void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];// 暂停场景
[self.sceneView.session pause];
}(void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
/*
// Override to create and configure nodes for anchors added to the view’s session.
- (SCNNode )renderer:(id)renderer nodeForAnchor:(ARAnchor )anchor {
- //创建node 节点
SCNNode *node = [SCNNode new];
return node;
}
*/
- (void)session:(ARSession )session didFailWithError:(NSError )error {
}
- (void)sessionWasInterrupted:(ARSession *)session {
}
- (void)sessionInterruptionEnded:(ARSession *)session {
}