
土木エンジニアがUnityを使ってARアプリを作ったら~その2~
第1回ではxRってなにか、ARが現場でどのように活かせるのかをお話しました。
今回は具体的な手順を追ってUnityでARを体験する手順をご説明させていただきます。
1.ARを体験するために必要な準備
・Unityが動くためのPCスペックのチェック
・ARアプリを起動するための携帯のチェック
・ARとして表示するデータの準備
・Unityが動くためのPCスペック
OS:Windows又はmac
CPU:Intel Core i5以上
メモリ:4G以上(4Gだと重くなります。)
ストレージ:500G以上
(※すべて個人的見解です)
-スペックの確認方法(以下をご参照ください!)
・ARアプリを起動するための携帯のチェック
AR機能(ポケモンGo)など試されたことはあるでしょうか。
ほとんどのスマートフォンで動作されますが、AR機能がないスマートフォンもありますので何かしらのAR機能を使ったアプリを確認してください。
・ARとして表示するデータの準備
Unity上で簡単なBoxを表示することもできます。
もし、鉄筋モデルを見てみたい!などありましたら私のTwitterプロフィールからダウンロードしてください。
2.Unityをダウンロードしよう!
事前チェックが終わったらUnityをダウンロードしましょう。
賢者たちがまとめてくれていますのでそちらをご覧ください。
ただし!注意が必要です!
これから説明するためにもダウンロードするバージョンだけは要確認です!
ダウンロードは2019.4.15をお願いします。
また、一緒に下記のものもダウンロードしてください。
私はこれをダウンロードしなかったので3日間悩みました
-Andoroid Build Support
-Android SDK &NDK Tools
-iOS Build Support
3.Unity以外に準備するもの
実はAndoroidを利用するにあたっていくつか必要なものがあります。スマートフォン開発業界では当たり前のこと過ぎて記事にもなっていないのですが、非開発者にはなかなか知りえない情報でしたのでこちらも設定をお願いします。
(※本当は不要かもしれません。私が作るにあたって、準備すべき環境を揃えたので、ダウンロードしたほうが良いというレベルです。)
・JavaのPATH設定および環境変数JAVA_HOMEの設定
なんやそれ?って話ですがこちらは準備しておいたほうがよさそうです。
ちょっととっつきにくいですが、頑張ってください!!
・AndoroidStudioのインポート
こちらも頑張ってください。この辺りは苦手意識を持ちますが、手順に沿って丁寧にすべて実施してください。
ダウンロードしたファイルの保存場所は必ずメモしておいてください!エラーが発生した時に必ず必要となります!!(すごく、すごく大切です!!)
4.Unityの起動とVuforiaの設定
また設定かよぉ~と声が聞こえそうですね。
そうなんです。設定に次ぐ設定。。。ここをおろそかにすると3日間苦しみます。産みの苦しみです。がんばりましょう!
Vuforiaは私が使ったARマーカーサイトになります。
こちらも賢者がまとめてくれていますので、ぜひご参照ください。
しかし、ですねUnity2019をダウンロードすると上記のようにはなりません。そこで、下記の賢者を頼ってください。
ちなみに、英語がムズムズされる方もいらっしゃると思います。
Unityだけは日本語化できますので、こちらをご覧ください。
ただ、私はエラーを調べるにあたって賢者が表示しているのが英語でした。日本語表記を使っていると、結局英語に変換して探さないといけなくなります。英語のほうが文字情報として探しやすいので英語をお勧めします。
5.スマートフォンでARを試す方法
ここも開発業界では当たり前すぎて情報が見つかりづらかったのです。
あと一歩ですので、丁寧に設定していきましょう。
・Editを開いてPreferencesを表示、JDK以下にチェックをつける
この辺りはダウンロードしたフォルダを指定するなど記事もありますが、私はこの方法ですんなりいきました。上記で設定できていたら問題ないと思います。
・Editを開いてProject Settingsを開いてPlayerで名前を設定する
英語表記で名前を決めてください。ただし、_・など特殊文字は使わないほうがよさそうです。(たぶん問題ありませんが、ないほうが安全です。)
さらに下へスクロールし、PackegeNameを設定します。この時の設定方法は「unity.会社名.ゲーム名」(すべてローマ字)といった表記にする必要があります。
Minimum API Leve/Target API Levelは表記の通りでお願いします。
※Target API Levelはご自身のandroid端末のバージョン次第になりますので適宜変えてください!
Scripting・・・はMonoで設定をお願いします。
※ここまでくると何のことやら混乱しているのではないでしょうか。
AndroidJDK/SDK/Minimum API Leve/Target API Level
はAndoroidStudioでダウンロードした内容となります。混乱している場合にはもう一度
をご覧ください。
・Buildして.apkファイルを作ろう!!
やっとここまできたよ!頑張ってます。本当に頑張ってます!
山登りなら9合目、マラソンならあと1㎞ってところです!
Fileを開いて、Build setttingを開きましょう。androidを選択して(今はBuildが表示されている部分)のSwitchPlatformを押します。
すると、AndroidにUnityマークが移動するので、その状況でBuildボタンを押します。
すると、ファイルの保存場所を指定されるので、保存先を確認して保存します。
指定したフォルダに下記の.apkファイルが表示されたら成功です。
あとはこのファイルをGoogleDriveやその他のファイル共有ソフトでスマートフォンに送るだけで完了します。
と、思うじゃないですか。実は携帯側にも一工夫必要です。
・Androidスマートフォンを開発者環境として設定する
これまでに比べたら全く苦労もありません。下記を参照しながらデベロッパーになってください。
ダウンロードしたファイルを開くとUnityのアプリが携帯にダウンロードされます。様々警鐘が出てきますが、突き進んでください。
すると、Unityのマークが表示されカメラが起動されます。
そして、マーカーにかざすとARができます!!
6.エラーを探す
お疲れ様でした!!と言いたいところですが、こんなに順調に行くわけないと思っています。おそらく、PCでARを試すぐらいまでは難なく行くと思います。しかし、スマートフォンへのBuildで苦しくなります。
私は
に苦しめられました。
このエラーはフォルダ指定先に日本語が含まれていたのでエラーが発生していました。
ちなみに、Buildのエラーはたくさんあるようです・・・
調べるときはUnityのエラーを見て、ググってみましょう。なにかしら出てきます。
Unity等開発をするにあたって重要なのは、エラーが出た時の調べる能力だったりするかもしれません。YouTubeでも海外の方が載せているHow toがありますので、調べてみると良いかもしれません。
7.これからのxRと土木現場
いかがだったでしょうか。ここまでうまくいかなかったかもしれませんし、情報量が多すぎてげんなりされたかもしれません。また、PCや携帯が準備できなかったかもしれません。
ただ、ARとかxR領域は非ソフトウェア開発者でも開発できるということを知ってほしいですし、非ソフトウェア開発者が実験的に(まさにデベロッパーとして)現場で生かすからこそ土木業界全体の生産性向上が達成されると思っています。
私もこれから現場でどんどん生かしていって、技術者のキャパシティーを広げていき、彼らがもっとものづくりに励めるようサポートしていきたいと思っています。
8.最後に宣伝
・建設業界の皆様へ
現場で働いている方々もご覧いただいているかもしれません。
そこで、建築・土木問わずぜひ訪問させて頂きたいと思っています。
現場で何が求められているのか、私が勤める会社だけでなく他社でも勉強をさせて頂きたいのです。
うちに来ていいよ~!という方、ぜひ訪問させて頂き現場を見させてください。
・xR領域の皆様へ
もしxR領域が専門の企業様がご覧いただけていたら是非技術的相談をさせてください。私は素人ですので、xRの可能性を探求したく思っています。うちこいよ~という企業様、ぜひ訪問させて頂き勉強させてください。
・現場の3D化を望む皆様へ
現場を3D化するお仕事を頂きたいと思っています。何かお力になれることがあればぜひお声掛けください。
私は構造物をモデリングするためのRevit、そして土木を設計するためのCivil3D、SketchUp、SiTECH3Dを使うことができます。
また、測量機であればLN-150/LeicaMS60/RTK-GNSS:GS-16を使うことができます。
さらに、JUIDA認定のドローン飛行士であり、現場の点群化及び解析は30以上の現場を担当しました。
UAVはPhantomRTKを主に使い、SfM処理ソフトはPix4D、点群処理ソフトはWingEarth・SiteScopeを使っています。
現場のVR化のためにTwinmotionを利用して、レンダリング及び現場でのVR体験支援も実施しています。
力になってやろう!という方がいらっしゃればぜひTwitterのDMにてご連絡いただけると幸いです。