AR Foundation

ARアプリの現状

今回やったこと 前回の投稿から随分と時間が空いてしまいました 色々と問題解決をしているとそれに夢中になり記事を書くのを忘れてしまいました 色々と試したのですが、それを個別に記事にするのは大変なので、覚えてる範囲で何をやったのかだけ記載しておこうと思います マーカーを読み取るとランダムに表示するモデルを切り替える 3Dモデルではなく、文字をAR空間に表示する 文字を自由に変更できるようにする(色、文字サイズ) AR空間をタップすると、そこにスタンプ(画像)を貼り付けられるようにする などの機能をつけてみました AR Foundationで困ったこと マーカーの認識する距離が遠いと認識しないことがよくあります マーカーがシンプル過ぎる事や、サイズが小さいのが良くないのかもしれませんが距離を話すとマーカーをロストしてしまいます また、近すぎても同様にロストします 認識や追従は割と早いので良いのですが、もう少しマーカーの認識率が上がると嬉しいですね やりたかったけど解らなかったこと マーカーを前後左右に移動するとモデルもマーカーに合わせて移動するのですが、マーカーを回転させてもモデルは回転しません マーカーを置いたままでスマホの方を側面に移動するとモデルの側面を見ることができます マーカーを手に持った状態で、マーカーをくるくる回転させてモデルを見るような事もしたかったのですが、どのようにすれば良いか解らなかったので、もう少し試行錯誤してみたいと思います

続きを読む

UnityのバージョンとAR Foundation

今回やったこと 前回のマーカーを使ったARで表示はできたけど表示が遅かったり、追従しなかったり、マーカーを傾けるとモデルが同じように傾かなかったりと動きがダメダメでした そこで、AR Foundationのサンプルをダウンロードして実行しようとしたら、動作に必要なUnityのバージョンが違うことがわかりました Unity HubからUnityをインストールする際にメジャーバージョンが2019.4.20f1となっており、少し古いと思いながらもそれをダウンロードして使いましたが どうやら2020.2.1f1で動作させるほうが良かったです 2020.2.1f1ではAR SessionにTracking Modeというプロパティが追加されており、追従するモードが指定できるようになっていました また、Androidの設定も簡単になっていました Player Setting Other Settings Multithreaded Renderingをオフ Graphics APIsのVulkanをremove(ARCoreでは対応していない為) Minimum API Levelを19以上に変更(今回はAPI Level 26に設定) それ以外はDefaultのまま XR Plug-in Management ARCoreをオン それ以外はDefaultのまま Gradleの設定とかはすることなくビルドして実機で動作させることができました マーカーの追従も早くなり、マーカーを傾けても大丈夫 これで次の段階に進めます 次回 ボタンを配置してモデルの切り替えをやってみようと思います

続きを読む

画像をマーカーにしたARを試す

今回やること 前回はおもちゃラボさんの【AR Foundation】セットアップから平面検出までというブログを参考にさせていただき、Andoridで実際に平面検出のARを動かしてみました 今回は同じくおもちゃラボさんのブログを参考にさせて頂いて【AR Foundation】マーカーを使ったARを作るを参考にしてマーカーを使って3Dモデルを表示していきます Unityの準備 前回の記事を参考にしてプロジェクトを作成し、PackegeManagerでAR Foundation, ARCore XR Plugin, ARKit XR Pluginをインストールしておきます 次にHierarchyにAR Session, AR Session Originを追加して準備は完了です 【AR Foundation】マーカーを使ったARを作るに沿って作業を進めていきます ARマーカーのライブラリを作成する 基本的にはブログの内容そのままに作業していきます 今回、マーカーには次の画像を使いました。数年前に年賀状を作る際に購入した本に付属していた画像です 画像のサイズが893x765ピクセルだったので、Physical Sizeには X:0.0893 Y:0.0765 を指定しました この数値は表示するモデルに合わせて調整したいと思います AR Tracked Image Managerの設定 ブログ記事では「Serialized Libraryの欄に、作成したReferenceImageLibraryをドラッグ&ドロップします。」と記載されていますが、私のバージョンではReference Libraryとなっているので、そこにマーカーの画像を登録して作成したReference Image Libraryをドラッグ&ドロップしました 表示した3DモデルはAsset StoreからUnity chanをダウンロードして使わせてもらいました 実行 マーカーを撮してからモデルを表示までが少し遅い気がしますが、表示はできましたので、ひとまず今回の目標は達成です 次回 次回は、表示したモデルの画面を保存するような機能を追加してみようと思います

続きを読む

久しぶりにUnityを

目的 今回Unityを触るのは、Unityを使ったARのアプリを作りたいという依頼があった為です アプリストアへのリリースも含めて一通り作業していく予定なので、学んだことをブログに残して行こうと思います Unityのインストール いつぶりか分からないけど、ずいぶん久しぶりにUnityのサイトへアクセス インストールの方法から変わってますね。変更になったのも数年まえらしいので、久しぶりすぎます さっそくUnity HUBをインストールし、忘れてしまっているUnityのアカウントでログインしてからUnityをインストール しました Unityをインストールするのは困る部分はないと思いますので、説明は省きます(詳しく書いてるサイトがあるのでそちらを参考にしてください) まず最初に もともとはUnityでARをするにはvuforiaを使おうと思っていたのですが、作成したアプリをリリースするとなると費用かかるし、どうやら今後はAR Foundationの方がスタンダードになりそうなので、AR Foundationを使用して作成していきます 正直、AR Foundationについては何も分からないのでおもちゃラボさんの【AR Foundation】セットアップから平面検出までというブログを参考に勉強させて頂きます それが終わったら【AR Foundation】マーカーを使ったARを作るを参考にしてマーカーを使って3Dモデルを表示していきます 作ってみる ひとまず、【AR Foundation】セットアップから平面検出までの通りにすすめて行きます プロジェクトの作成 記事のままなので省略 AR Foundationのインストール 基本的に記事のままです 選択できるAR Foudationのバージョンが2.1.16と4.1.5の2種類がありましたが、4.1.5をインストールしました AR Core XR PluginもARKit XR Pluginも4.1.5と同じバージョンで揃えてインストールしました 実機での確認はAndroidで行う予定なので、ARKit XR Pluginは不要ですが、気が変わってiPhoneでも確認したくなった時の為に入れておきます AR Sessionを作成する 記事のままなので省略 ビルドする 記事ではiOS用のビルドとなっているのですが、私はAndroidで確認したいのでAndroidでビルドします やることはほとんど同じです 以下を設定しました Player Multithreaded Renderingをオフ Other Settings Minimum API Levelを19以上に変更(今回はAPI Level 26に設定) Graphics APIsのVulkanをremove(ARCoreでは対応していない為) それ以外はDefaultのまま XR Plug-in Management ARCoreをオン それ以外はDefaultのまま 実機を接続してBuild And Runを実行するがgradleのバージョンが古くてエラーが発生

続きを読む