Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AR超入門

F61e6a80fb204c1c33c4aacb999efc36?s=47 yuhi
May 04, 2019

 AR超入門

F61e6a80fb204c1c33c4aacb999efc36?s=128

yuhi

May 04, 2019
Tweet

More Decks by yuhi

Other Decks in Technology

Transcript

  1. AR超入門 チンパンジーでもわかる

  2. Twitter:@HSAU_dosei ・UnityとAndroidとAR の人 ・フルーチェをたくさん 食べて大腸が死んだ。 ・実はイケメン 卍ゆひ卍

  3. じゃあ入門しようか。 SECTION.1

  4. AR(Augumented Reality) • ARは、現実世界からの情報を元にデジタル情報を 重ね合わせ、視覚的に現実を拡張した表現可能に します。画像や周辺の空間を認識し、現実の映像と デジタル情報を合成した映像をリアルタイムにディ スプレイ上に表示します。ARは、広告・プロモーショ ンでの利用から広がり、近年では産業分野での利 用が拡大しています。ARとはコンピュータの力で、

    見えないものが見えるようになる技術です。
  5. いや、 分かんないから。

  6. AR(Augumented Reality) • 簡単に言ってしまうと… • コンピューターを使って 現実世界に何らかの情報を重 ね合わせる技術 • 情報…

    ・3Dモデル,映像,画像
  7. ARには色々な種類がある!!! • マーカー型ビジョンベースAR • マーカーレス型ビジョンベースAR • ロケーションベースAR

  8. ARには色々な種類がある!!! • マーカー型ビジョンベースAR • マーカーレス型ビジョンベースAR • ロケーションベースAR

  9. マーカー型ビジョンベースAR • 特定のルールで黒と白のパターン化した図形をマーカーとして使 う。 • QRコードのような図形、または普通の写真や画像自体をマーカー として使用する場合もある • マーカーから3次元の付加情報を得ることができる。

  10. ARカメラ(3DS)

  11. ARには色々な種類がある!!! • マーカー型ビジョンベースAR • マーカーレス型ビジョンベースAR • ロケーションベースAR

  12. マーカーレス型ビジョンベースAR • 特定のマーカーを利用せずに、空間自体を認識する • 建物・景色・物などに付加情報を加えることが可能 • マーカーレス型では特定のマーカーを用意することなくARの情報 を取り込むことができる

  13. None
  14. ARには色々な種類がある!!! • マーカー型ビジョンベースAR • マーカーレス型ビジョンベースAR • ロケーションベースAR

  15. ロケーションベースAR • GPSから取得する位置情報に関連した、画像や文字といった付加 情報を提示する手法 • 画像認識に基づくものではなく、実空間の場所に紐付いた手法で ある • マーカーが不要なため、屋外での利用がかんたん!

  16. セカイカメラ(2009年)

  17. None
  18. MobileAR SECTION.2

  19. 最近のARコンテンツはMobile向けが主流 • 誰もが持っている端末で動かすことができる • Mobile用ARフレームワークの充実 ・Vuforia ・ARkit(IOS) ・ARcore(Android)

  20. 最近のARコンテンツはMobile向けが主流 • 誰もが持っている端末で動かすことができる • Mobile用ARフレームワークの充実 ・Vuforia ・ARkit(IOS) ・ARcore(Android)

  21. ARcore • Googleが出しているAndroid向 けARフレームワーク • Tangoから進化した姿 • Unity,UnrealEngine, AndroidStudioで使用可能

  22. 何ができるの??? • モーショントラッキング • 水平・垂直面の認識 • 光源の推測 • 空間共有 •

    特徴点抽出 • マーカー画像検知 • 顔認識
  23. 何ができるの??? • モーショントラッキング • 水平・垂直面の認識 • 光源の推測 • 空間共有 •

    特徴点抽出 • マーカー画像検知 • 顔認識 ͳΜͰ΋ Ͱ͖Δʂʂʂ
  24. Unityで実装しよう。 SECTION.3

  25. 今回の完成品はGitHubに 置いてあります https://github.com/yuhi-dosei/Yuruhako_AR.git お話だけ聞いてもらえれば分かる…はず!!

  26. 今回使用するもの • Unity 2018 https://unity3d.com/jp/get-unity/download • AndroidStudio https://developer.android.com/studio/?hl=ja • JavaDevelopmentKit

    https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads- 2133151.html • ARcore SDK for Unity https://github.com/google-ar/arcore-unity-sdk/releases • ARcore 対応端末 https://qiita.com/namiwavess/items/088605ffdd9062d57bd8
  27. プロジェクトの作成からSDKの Importまでは端折ります!! 続きは君の目で確かめよう!!

  28. AndroidBuildの設定 SECTION.3_1

  29. Unity/PreferencesからExternalToolsを開く AndroidSDKの ファイルパスを設定 ファイルパスが分から なければ AndroidStudioを立ち上 げ Configure/Settings/Andr oidSDKから取ってくる

  30. Unity/PreferencesからExternalToolsを開く AndroidJDK (JavaDevelopmentKit) のファイルパスを設定

  31. FileからBuild Settingsを開く Switch Platformから AndroidにPlatformを変更するの を忘れずに!

  32. FileからBuild Settingsを開く AndroidにPlatformを変更したら Player SettingsからBuildの詳細な 設定を開くぞ!!

  33. まずは、CompanyNameと Product Nameを適切な名前にし よう!

  34. 次はOther Settings を開くぞ!!

  35. ArcoreはMultithreaded Renderringに対応してない のでここのチェックボッ クスはOFF

  36. Package Nameは com.companyname.productn ame といった用に記述。 最初に設定したのと違うと Buildコケるので注意!!

  37. ARcoreが対応しているバー ジョンが Android7.1以上なので ここのMinimumAPILevelは 7.1に設定

  38. 最後にXR SettingsのARcoreSupportedに チェックを入れる

  39. セカイを作ろう。 SECTION.3_2

  40. 今回の目標 任意のモデルをARで表示する

  41. Assets/GoogleARcore/Examples/HelloAR/Scene からHelloARを開く この画面が出てればOK

  42. このままだと暗いので明かりをつけよう ほうら。明るくなっただろう

  43. Assets/GoogleARcore/Examples/HelloAR/Scripts からHelloARController.csを書き換える private bool TappedCheck = false; if(TappedCheck==false){ var andyObject

    = Instantiate(prefab, hit.Pose.position, hit.Pose.rotation); andyObject.transform.Rotate(0, k_ModelRotation, 0, Space.Self); var anchor = hit.Trackable.CreateAnchor(hit.Pose); andyObject.transform.parent = anchor.transform; TappedCheck = true; } else{ return; } タップ判定を追加して 一回しかobjectを出せなくする
  44. Example Controller の AndyPlanePrefabとAndyPointPrefabに3Dモデルをアタッチ

  45. 再びBuildSettingsを開く Add Open Scene からSceneを追加

  46. Command+B or Ctrl+BでBuld.

  47. Unityちゃんかわいい!!

  48. 応用すればこんなこともできるよ!!

  49. 君も明日からイケイケ ARエンジニア!!! ぼくとおんなじ

  50. AR超入門 イケイケARエンジニアのなり方がわかる