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

ユニティちゃんと鬼ごっこができるMRゲームと戦術位置解析システム / Mixed reality game and tactical position analysis

ユニティちゃんと鬼ごっこができるMRゲームと戦術位置解析システム / Mixed reality game and tactical position analysis

02c47acb1dcec7e7c7fa1e9f94c14abb?s=128

sotanmochi

July 27, 2018
Tweet

Transcript

  1. ユニティちゃんと鬼ごっこができる MRゲームと戦術位置解析システム 2018/07/27 Soichiro Sugimoto sotan(@sotanmochi)

  2. 自己紹介 • sotan (@sotanmochi) • TIS株式会社・戦略技術センター • 趣味で作ったHoloLensアプリをリリースしました(2018/05) 2018/7/27 2

    https://www.microsoft.com/store/apps/9P4XXMW3F1GC
  3. Holo OnigokkoというMRゲームについて • HoloLensを使って現実空間でユニティちゃんと鬼ごっこ • 空間マッピングできればどこでも遊べる(10m x 10m以上の広さ) 2018/7/27 3

  4. デモ動画 2018/7/27 4 https://www.youtube.com/watch?v=Kth2Qd6z8FE

  5. ゲームフィールド生成 • Spatial Mappingでメッシュ生成 • NavMeshBuilderで動的にNavMesh生成 2018/7/27 5

  6. ユニティちゃんの戦術 • プレイヤーから遠くに離れる • プレイヤーの正面を避ける • 障害物の後ろに隠れる 2018/7/27 6

  7. 戦術位置解析(戦術位置検索)システム • キャラクターが自分の移動先のポイントを探し出すシステム • 目的に応じたポイントをその場で探し出す • ゲーム内の地形を、ゲーム内でリアルタイムに把握して、 自分の能力に合わせて、最も適した位置を発見する • CryEngineで発想され、2011年ぐらいから実装されている。

    • Unreal Engine 4では、EQS(Environment Query System)で同じ 機能がある。 2018/7/27 7 引用元: ・キャラクターの人工知能のための戦術位置解析システム(CEDEC 2016) ・ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~(de:code 2017)
  8. 戦術位置解析システム for Unity Unreal Engine 4の実装を参考に自作してみた https://github.com/sotanmochi/EnvironmentQueryForUnity 2018/7/27 8

  9. 戦術位置解析システム for Unity • キャラクターを中心にポイントを生成 • 各ポイントのスコアを計算 • スコアが最も高いポイントの位置を目的地にする 2018/7/27

    9 プレイヤーからの距離 + + プレイヤーの向きとの角度 プレイヤーの死角
  10. 戦術位置解析システム for Unity デモ(PC版) https://github.com/sotanmochi/SimpleOnigokkoGameUsingEnvQuery 2018/7/27 10

  11. まとめ • Spatial Mapping + NavMesh + 戦術位置解析を使って 現実空間をフィールドとするMixed Realityゲームを作った

    • 戦術位置解析ができるUnityのアセットを見つけられなかったので Unreal Engine 4の実装を参考に自作した • ゲームAI系のオススメのアセットを教えてください 2018/7/27 11
  12. ありがとうございました

  13. Appendix

  14. 戦術位置解析システム for Unity 基準位置を中心にポイント(アイテム)を生成 2018/7/27 14

  15. 戦術位置解析システム for Unity 各ポイント(アイテム)のスコアを計算 2018/7/27 15 プレイヤーの死角 プレイヤーからの距離 プレイヤーの向きとの角度 +

  16. 戦術位置解析システム for Unity スコアが最も高いポイントの位置をNavMeshAgentの目的地にする 2018/7/27 16

  17. 戦術位置解析を有効にする範囲 プレイヤーが接近してきた時にEnvQueryを有効にする (下図のオレンジ色の範囲に入ってきた時) 2018/7/27 17 EscapeDistance forward direction Target (Player)

  18. End