HARLEY-DAVIDSON Street750 + UE4 + Oculus + Arduino = JumpStart eXstream

2015.08.16 | oculus, unreal engine 4

ちょっと書くのが遅くなりましたが、、
2015年5月23日、24日、富士スピードウェイにて行われた HARLEY-DAVIDSON BLUE SKY HEAVEN にて UE4 + Oculus + Arduino + HARLEY-DAVIDSON Street750 という、実車とVR体験を組み合わせたコンテンツ「JumpStart eXstream」を展示しました。

概要等はprototypeのサイトに記載していますが、特徴としては HARLEY-DAVIDSON Street750 実車にエンジンをかけているということです。
以前の横浜ホットロッドショーバージョンでは、室内での展示ということもあり、バイクはエンジンが動いていない状態で、ハンドルやクラッチをカメラを使用しOpenCVを使いセンシングしていましたが、今回の展示では富士スピードウェイで野外ということもあり、実車のエンジンをかけることができます。
さらに、バイクをJumpStartというローラー台にのせることにより、エンジンをかけたバイクの後輪を空転させることができます。
また、最近のバイクは電子制御されている部分が多く、速度や回転数、アクセル・ブレーキの状態などをリアルタイムに取得することができます。
それらの走行情報をArduinoで取得し、描画用のPCへOSCで送信しOculus上のVR空間での走行へと反映しています。

バイクを電気系統をHackしてその情報をVR空間へ反映させています。バイクのセンシングは弊社のハードの得意なバイカーがArduinoで実装しています。

continue reading…

OpenCVとUnityの連携について

2015.08.13 | openCV, unity3d

OpenCVとUnityとの連携を考えたとき、

  • openCVSharpを使う
  • pluginとしてnative実装
  • nativeで実装して通信(udp等)で連携
  • openCV for Unityをつかう

などあると思うけど、それぞれのメリット・デメリットをまとめておく。

openCVSharpを使う

メリット

  • Unityのみで完結する。
  • 最終アプリも一つとなる。
  • openCV <-> Unity texture のやり取りも可能

デメリット

  • macで若干使いにくい。
  • 本家openCVからの移植なので移植までのタイムラグがある。

pluginとしてnative実装

メリット

  • 最終アプリが一つとなる。
  • openCV <-> Unity texture のやり取りも可能

デメリット

  • win, macなどそれぞれpluginを用意する必要がある。
  • デバッグ等ちょっとやりにくい。

nativeで実装して通信(udp等)で連携

メリット

  • アプリが分かれるので、認識パートと描画パートなど開発を分けやすい。
  • 通信でのやりとりなので、データ量が少なければ比較的高速なやり取りが可能。(※pluginの場合との比較は未検証)
  • 認識と描画パートが分かれるので、後からそれぞれのパートを別の実装(UnityからUE4へなど)に変えやすい。

デメリット

  • アプリが複数となる。
  • 画像のやりとりをする場合は、工夫が必要か。 別アプリにしたときの画像のやりとりは、 syphonを使うなどになるか。

openCV for Unityをつかう

メリット

  • さまざまなデバイスに対応
  • 最終アプリも一つとなる。
  • Unityのみで完結する。
  • openCV <-> Unity texture のやり取りも可能
  • Kinectなどのサンプルもあり

デメリット

  • 有料 $95
  • openCVの知識+アセットの学習コストが必要。(Sampleなどが充実しているのでそれほど難しくはないが)
  • packageが巨大 300Mb程度

関連外部URL

UnityでOpenCVを どう使うか – OpenCVSharp vs OpenCV dllを使う環境 vs スタティックライブラリ

異なるアプリ間で動画処理を連携 Syphon と Spout + BlackMagic

異なるアプリ間で画像のデータをやり取りする場合。
主な例としては、VJソフト上でほかのアプリで描画した内容を描画してミックスしたい時や、プロジェクションマッピングの素材として別アプリで描画したものを使用したいとき、oFで描画した内容をUnity内で表示したいときなど。

Macでの定番としては Syphon がある。

サイトを見るとわかる通り、いろいろなアプリに対応している。
Unity版は、 https://github.com/Syphon/Unity3D

これを使うことでUnityで描画した内容を MadMapper 等で補正してプロジェクションマッピングに使用したりなどできる。

このような仕組みのwindows版が Spout

こちらもいろいろなアプリに対応。vvvvとかね。
もちろんUnity版のプラグインも https://github.com/sloopidoopi……pout4Unity

MadMappaerと同じようなプロジェクションマッピングするのに便利なのが、mapio2

BlackMagic Intensity シリーズなどキャプチャボードで取得した画像をSyphonなどで使用したいときには、BlackSyphon または、 BlackSpout

blackMagicからの描画を受け取る方法として、
oFだと、下記addon。
https://github.com/kylemcdonal……Blackmagic

Unityだと有料になるけれど、AVPro Live Camera
https://www.assetstore.unity3d……ntent/3683

どちらもBlackmagic Decklinkをサポートしている。

その他/参考
DeckLink.net
Full HD映像をMacに入力してoFでリアルタイムにエフェクトをかける

UE4 to Spout Plugin
https://forums.unrealengine.co……out-Plugin
https://github.com/Allar/UE4ToSpout

pagetop