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

UE4+Tangoをいじってみた話

mao
August 20, 2017

 UE4+Tangoをいじってみた話

UE4 Meetup Sapporo Aug. 2017(08/19)
ショートセッション 資料

https://www.meetup.com/ja-JP/UnrealSapporo/events/240959386/

mao

August 20, 2017
Tweet

More Decks by mao

Other Decks in Technology

Transcript

  1. UE4 Meetup Sapporo Aug. 2017 (08/19)
    ショートセッション

    View full-size slide

  2. どこからきたの?なわばりは?
    ・mao (@TEST_H_)
    ・ゲームプログラマーなフレンズ
    ・仕事では主にUnityちほー等に生息している
    ・UE4+Tangoは業務関係なしに趣味で楽しんでいる
    ・最近Zenfone ARをGET

    View full-size slide

  3. 最初に
    ・今回話す「Google Tango Plugin for UE4」について、
     まだExperimentalなので注意
    → 大雑把に言えば今後の更新で使い方が変わる可能性があります。
    ※その為に今回話す内容についてもバージョンによっては使えなくなっている可能性
    も十分にありえるので、その点ご了承下さい。

    View full-size slide

  4. 最初に
    ・ショートセッション想定なので
     諸々説明を端折ってます。。
    →例えばUE4で言うとモバイルの入力インターフェイスの無効化とか
    ・まだまだ手探り段階での情報共有となるので
     中間報告的なニュアンスで聞いて頂けると幸いです。。
    →間違いやご指摘等あれば、お気軽にご連絡下さい。

    View full-size slide

  5. 目次
    1. Tangoとは?
    2. TangoPluginの簡単な使い方説明
    3. ハマリポイント等

    View full-size slide

  6. Tangoとは?

    View full-size slide

  7. Tangoとは
    ・Googleが出しているARプラットフォーム
    ・以下の機能等がサポートされている
    - モーショントラッキング(Motion Tracking)
    - 領域学習(Area Lerning)
    - 奥行き認識(Depth Perception)
    - 環境再構築(3D Reconstruction) ※以降3DRで説明

    View full-size slide

  8. TangoPluginの簡単な使い方説明

    View full-size slide

  9. Pluginを有効化
    ・Built-In -> Augmented Realityに「Google Tango」が
     存在するのでこちらを有効化

    View full-size slide

  10. プロジェクト設定の「プラグイン」項目に
    「Tango」が増えており、こちらで起動時の設定や
    機能の有効化等の設定が行える。

    View full-size slide

  11. AR Cameraを有効化
    Tangoを起動するように設定した上で、
    「空のレベル」を追加しビルドすると
    ARカメラが有効になっている
    ※ARCamera越しに天井を描画.
    この状態で空間にCubeを一個配置してみると、
    ちゃんと置いた位置に表示されている

    View full-size slide

  12. 3DRの有効化について
    ※ドキュメントが無かったので正しいかは不明だが、
     自分の方で対応できたやり方を解説

    View full-size slide

  13. 3DRの有効化について
    1. デフォルトとなるPawnに「MRMesh」を追加
    ※こちらは何故か「Tango」カテゴリー以下では無く、
     「Rendering」カテゴリー以下にあるので注意
    2. MaterialとMesh Reconstructionを設定.
    ※後者のAssetは構築するMeshの設定情報
     TangoPluginを有効にしたら作成出来るようになっている

    View full-size slide

  14. 「StartReconstruction」を実行
    →これでMeshが構築される
    ↑※赤いメッシュを動的に生成

    View full-size slide

  15. 3DRの要調査項目
    ・頂点カラーは渡っていない様に見受けられた。
    - ソースを見た感じだと設定関数にfalseが渡されていた..?
    - 要調査
    ・同じくUVsも設定されていない様に見受けられた。
    - テクスチャが貼れない?
    - 勉強不足なだけかもしれないので、
    他のサンプル等参考にして設定出来ないかを要調査

    View full-size slide

  16. ハマリポイント

    View full-size slide

  17. ・ドキュメントが無い
    - 基本手探り(他の開発環境のサンプルを参考にしたり、ソースを追ったり)
    - 自分は以下の対応を行った.
    - 他の開発環境のサンプルを参考にした
    - ソースを解析(その為にC++プロジェクトで作っておくと楽かも)
    - DoxygenでAPI Referenceっぽいのを生成したり
    - Google以外から出ているサードパーティー製のTango Pluginを参照
    - 何となく設計思想は似ていたので少し参考になった印象
    - Tangoの機能に関してある程度の理解が無いと実装が難しいかと思われる
    - 公式のサンプルが無いので...

    View full-size slide

  18. ・起動時に警告ダイアログが出てくる
    - 「Android 7.0 の動作の変更点 -> プラットフォームライブラリに
        リンクしたNDKアプリ」の項目を参照
    - https://developer.android.com/about/versions/nougat/android-7.0-changes.html#ndk

    View full-size slide

  19. ・レベル作成時にはSkyboxの扱いに注意
    - 描画順の影響かARCameraが表示されない
    - 例えば新規レベル作成時に「Default」選択すると、
    最初からSky Sphereが付くのでARCameraを使うなら消す必要がある
    ・設定によっては正しく動作しない
    - 例えばmin/targetSdkVersionを24に設定したら動作しない。
    - 他にもVulkanを有効化してみたが正しく動作しなかった。
    ※Vulkanに関しての補足
     試したのは単純に設定してみただけであり、
     Tango以外の要因(本来するべき設定が抜けていた 等)も十分に考えられるので、
     この点を含めて要調査項目

    View full-size slide

  20. ・部屋が汚いと投稿用の動画撮影が辛い
    - ARCameraに対応しているとモロ見え
    - 撮影の度に荷物を退避させたりするのは面倒
    ・開発時は無線でadbコマンドを叩ける用にしておくと楽
    - ハマリポイントでは無いが一応共有
    - adb コマンドはWi-Fi越しに叩くことが出来るので、
     設定しておけばアプリインストール時に
     いちいちケーブルを接続しなくても良かったりと楽。

    View full-size slide