UnrealEngine4 と Kinect for Windowsを繋いでみた
お久しぶりです。 yokodaです。
ここ2週間くらい巷で何かと話題の「UnrealEngine4」を触っています。
弊社の白井がツールの使い方含めてビジュアル面についての調査結果を記事としてUPしております。
・ゲームエンジン Unreal Engine 4 を触ってみました
・Unrealengine4で演出を作る「Matinee」
もう一人、プログラマーの河合がBlueprintの使い方やアニメーションの制御、コリジョン等について調査しており、
僕の方ではC++とBlueprintとの連携を含めてKinectやスマホ等、外部デバイスとの通信方法を模索しております。
とりあえず今回はKinectと繋げてみました。
やっている事は簡単で単にソケットを使って通信させています。
UnrealEngineにはもちろんソケットクラスも用意されているのですが、初期化方法がイマイチわからず
ビルドも通らなくって悩む。。
しょうがないのでOS標準のC++のソケットライブラリをインクルードして、
openFrameworksと通信させる所まではできました。
しかし、下記の様な記事を見かけ、、
「How to set up an simple UDP-Listener]
https://answers.unrealengine.com/questions/26593/how-to-set-up-an-simple-udp-listener.html
こちらをを参考にUnrealEngineのFUdpSocketBuilderクラスを無事使用する事できました!!助かります・・
今回はジェスチャーを検出するプログラムを過去の案件のAS3の資産を流用したいので
KinectのC#アプリとUnrealEngine4との通信間にFlashのAIRアプリが挟まっています。
単にKinectと通信させるだけならUnrealEngine4には「Kinectと通信ならプラグインがある」という話も聞きました。
少しググるとKinect2用のプラグイン等もあるみたいですが。
まぁ、ソケットが使えたという事なのでKinect2とを繋ぐ事も容易ですね。
なにより遠隔地の別PCからやスマホ、Arduio等、どんなデバイスでも繋げるのでこれでよしとします!
何かしらのデバイスでセンシングした値をもってUnrealEngine4上のオブジェクトが操作
できるので、インスタレーションやデジタルサイネージ、プロジェクションマッピングの分野でも
表現部分に「UnrealEngine4」を採用できるわけです♪
弊社ではインスタレーションなどで積極的に「UnrealEngine4」を活用する為にも
引き続きいろいろな可能性を探っていきたいと思います。