17
OpenAppLab センサーコース JINS MEME 概要 一般社団法人T.M.C.N / 株式会社システムフレンド 前本 知志

20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

Embed Size (px)

Citation preview

Page 1: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

OpenAppLab センサーコース

JINS MEME 概要

一般社団法人T.M.C.N / 株式会社システムフレンド

前本 知志

Page 2: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

・システムフレンドという会社でセンサー&デバイス部長やってます!KINECT等のセンサーを使ったアプリ(イベント用コンテンツ、医療ヘルスケア系)スマフォのARアプリ(最近はやりのぬり絵してキャラに取り込めるやつとか)を作っています。http://www.systemfriend.co.jp/kinect_nui

・エアー書道では何度かテレビ出演をしています2013年1月6日 東京MX TV 「Tokyo, Boy」 新年スペシャル2013年8月26日 日本テレビ 「NEWS ZERO」 などなど。

・TMCN (Tokyo MotionControl Network) Co-founder(理事)https://www.facebook.com/TokyoMotioncontrolNetwork

自己紹介

Page 3: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

こういうのを作ってます。

https://youtu.be/ZSXwhj8HqkE

https://youtu.be/YxCGnmfChKk

Page 4: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

書籍執筆

https://www.shoeisha.co.jp/book/detail/9784798139630

Intel RealSense SDKセンサープログラミング2015/5/12発売

中村薫, 前本知志, 斎藤裕佑,

谷口直嗣, 初音玲(Tokyo MotionControl Network)

Page 5: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

このセッションのながれ

1• JINS MEMEとは

2• JINS MEMEでの開発

Page 6: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

JINS MEMEとは

Page 7: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

JINS MEME

• https://youtu.be/PyGLsBAcglI

Page 8: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

JINS MEME

• 今の疲れが見える。気分が見える。世界初、内なる自分を知ることができるウェアラブルメガネ

• 頭部の動きをセンシング(加速度センサー、ジャイロセンサー)

• 目の動きをセンシング(3点式眼電位センサー)

Page 9: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

3点式眼電位センサー

人間の眼球は電荷を帯びており、その電位差を眼電位と言います。

INS MEME に搭載されている三点式眼電位センサーは、鼻パッドと眉間部分から検出される眼電位によって、眼球運動にともなう目の周りの電位差を検出します。

それにより、8 方向の視線移動とまばたきをリアルタイムに測定できます。

Page 10: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

JINS MEMEでの開発

Page 11: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

JINS MEME アプリ開発

https://developers.jins.com/ja/resource/docs/startup_guide/ios/

https://developers.jins.com/ja/resource/docs/datalist/ios/

公式SDKが無償で公開されています。

Page 12: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

ネイティブで作るのは考えただけで面倒なのでMEMEの一般発売前日に思い立って作りました。

Unity Pluginを作りました

https://goo.gl/IU2ugV

Page 13: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

Unity Plugin

ネイティブ

SDK

ネイティブ

Plugin(ObjectiveC)

ネイティブ

Plugin(C#)

アプリケーション

コード(C#)

必須 オプション

Page 14: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

Unity Plugin ネイティブ側- (void) memeRealTimeModeDataReceived: (MEMERealTimeData *) data {

self.latestRealTimeData = data;}

char* MEMEGetSensorValues() {NSString *value = [NSStringstringWithFormat:@"%f,%f,%f,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",

instance.latestRealTimeData.pitch,instance.latestRealTimeData.yaw,instance.latestRealTimeData.roll,

instance.latestRealTimeData.powerLeft];

return MakeStringCopy([value UTF8String]);}

ネイティブSDKからのコールバック

データを文字列に変換してUnityへ返す

Page 15: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

Unity Plugin C#側[DllImport("__Internal")]private static extern string MEMEGetSensorValues();

public static string GetSensorValues() {

if (Application.platform == RuntimePlatform.IPhonePlayer) {

var values = MEMEGetSensorValues();if (string.IsNullOrEmpty(values)){

return string.Empty;}return values;

}return string.Empty;

}

ネイティブプラグイン関数の宣言

ネイティブプラグイン関数のラッパー

iOS実機実行時のみネイティブ呼び出し

応用するとAndroidの時の処理やPCで実行するときなどのケースを作れる。

Page 16: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

スマホ系センサーと Unity

• Unityに対応させると動きを3Dで可視化したり、印象的なビジュアルを付けやすくなる

• iOSとAndroidの違いを(かなり)吸収できる

• Unityとは文字列でのデータのやりとりになるのでエレガントでない、ちょっとパフォーマンスも落ちる。

とはいえ、Unityで作れるメリットは大きい!

Page 17: 20151124.会津大学 JINS MEME 概要 & Unity Plugin作成

まとめ

• JINS MEMEやMoffBandなどスマホ系センサーのSDKをUnityに対応すると楽しいことになります。

• Unity非対応センサーのUnity対応にぜひトライしてみてください。