大阪市中央区 システムソフトウェア開発会社

営業時間:平日09:15〜18:15
MENU

ARKitに漬かってみる(1):ー 何しよう?

株式会社クローバーフィールドの経営理念
著者:川上洋
公開日:2019/03/14
最終更新日:2019/03/14
カテゴリー:技術情報
タグ:

こんにちは。川上です。

以前から、Unity+Swift+ARKitで摘み食べて、少し、漬かっていました。
忘れた頃に、時々、動かしてみて「ARってこんな感じになるのね。」っていました。

で、今回は、Xcode+Swiftオンリーで「なんかしよう・・・」で、はじめました。

現状の開発環境
・MBP — ver10.14.3
・iPhoneXR — iOS ver 12.1.4
・Xcode — ver 10.1
・Swift 4.2

・info setting
— Deployment Target — 12.1
— Privacy – camera Usage Description 「ARKitの処理を必要にする為、カメラを使います」

まずは、おサラから。。

「Next」に続けて、プロジェクト名などを設定して、フツーに作成しました。
で、iPhoneXRに繋いで、ホヤホヤのプロジェクトでBulid&Runしたのがコレです。

テンプレートの組み入れで、コードが有ったのが3関数でした。

//  ViewController.swift
import UIKit
import SceneKit
import ARKit

class ViewController: UIViewController, ARSCNViewDelegate {

    @IBOutlet var sceneView: ARSCNView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // Set the view's delegate
        sceneView.delegate = self
        
        // Show statistics such as fps and timing information
        sceneView.showsStatistics = true
        
        // Create a new scene
        let scene = SCNScene(named: "art.scnassets/ship.scn")!
        
        // Set the scene to the view
        sceneView.scene = scene
    }
    
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        
        // Create a session configuration
        let configuration = ARWorldTrackingConfiguration()

        // Run the view's session
        sceneView.session.run(configuration)
    }
    
    override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(animated)
        
        // Pause the view's session
        sceneView.session.pause()
    }
}

コレを元に、ググセンセに公開されているアレコレのサンプルをお勉強して、のんびり作っていくつもりだす。。

ではでは。

    上に戻る