読者です 読者をやめる 読者になる 読者になる

Konashi - Unity プラグインつくった

Githubリポジトリ

Unityから使えると演出アップできそうなので作ってみました。
サンプルにあるように、全機能のテストは時間がかかりそうなので、Digital IO, PWM, UARTだけ動作確認しました。

  • iOSのみ。Free版OK。(ゆくゆくはCoreBluetooth,IOBluetooth両対応したい)
  • Unity5から対応 : プラグインのモジュール化が楽だったため

退職その後エントリ

みなさま明けましておめでとうございます。

Facebookなどでご存じの方もいるかと思いますが。
昨年8月末で面白法人カヤックを退職して、フリーランスエンジニアとして働き始めております。

よくみる退職エントリをみて、僕も感動的な退職エントリ書くぞーと意気込んでいたのですが、退職前に人事から「退職者がやるたった一人の会社説明会」なるイベントを開いていただき、退職前に退職することが皆様に広く知れ渡ったので、退職ブログパワーを使いきってしまっておりました。

そのため、退職エントリは注目されるけど、あまり注目されない退職その後エントリを書いてみました。

以下、退職後に色々やったことです。

最初の設定

Macを購入して最初にするX個の設定!のような定番ではありませんが。

サービス

  • スキャンマン : たまりに溜まっていた名刺を全部デジタル化しました。郵送などはなく、こちらに出向いてくれて、全部Eightに取り込んでくれました。楽。宣伝ではありませんよ。
  • Dropbox Pro : なんだかんだ行ってファイルごとに共有設定ができるので、納品とか楽です。
  • Money forward : 色々な方に相談すると、確定申告は外部の税理士さんに頼んでいる方も多いようですが、何も知らないままにはいけないと、自分で確定申告を頑張ってみることにしました。って2月頃に泣いてるかもしれませんが。

初期投資

他は全部自分のモノでした。
でも月額サービスと足すと結構な金額になるのでちゃんと考えます。

まだ用意出来ていないもの

  • Android端末いろいろ : 検証機は毎年かわるのでなかなか用意しづらい。でかいアプリお仕事はなかなかできないなぁ。

ちなみに、しばらくはキャッシュフローが回らなくても生きていけるだけの貯金が無いと、独立はしちゃいけませんと、改めて感じました。 最近はweb以外の長めの案件も多いので最初に投資できないと、消耗戦の仕事ばかりを受けることになってしまいます。幸い貯金はあったのでやっていけましたが、仕事から入金までは結構間があるなあと。

HOLSTER入居

200人超のオフィスから、1人。なかなか孤独です。というか家だと一日中tumblrして過ごせてしまうダメ人間です。
基本的には1人も好きなんですが、1人でプログラミングしているとストレスのせいか、史上最大級の口内炎ができたりしました。

このままではまずいと
あるみかんさん経由→dot by dotさん経由で紹介していただいたシェアオフィスHOLSTERで働いています。 渋谷駅近く。いいとこよ。

OZON™

16Labさんが制作している製品OZON™、展示用のアプリの制作に携わせていただきました。

ceatecでは、industrial design部門ファイナリスト AnyTokyoに出展したり

スタートアップの最初の最初から参加させて頂いて、面白ことになりそうです。

BLE → Unityサイネージ
の知見もたまりました。

ppp Pixel Land

Tokyo Designers Week 2014ではpppさんの作品Pixel LandのiPadアプリをお手伝いさせていただきました。
子供に遊んでもらうのって、反応がリアルな分、大変や。

進撃の巨人展 360°体験シアター哮

同じオフィスで制作させて頂いているdot by dot inc.さんの仕事
Oculusコンテンツ用のエフェクトをお手伝いさせていただきました。

Oculus(特にDK2)では今までの2D画像を多用したエフェクトだとあらが見えてしまう。そりゃ3Dだからね。
勉強になりました。

Yahoo! Creative Award

前職の最後の仕事が賞を頂きました。2部門でゴールド2つ。ありがたや。

貞子3D2 スマ4D

映画館ではスマホの電源はON!
映画のストーリーと連動するスマホアプリ。
Unityの演出かなり盛ったのですが、映画を見た人にしか見てもらえない。(当たり前ですが)

2020 ふつうの家展

三井不動産さんと作っておりました。
2020年には普通になっているであろう半歩先の技術を集めた家です。
swift製未来のサーバー、konashi、puredataflashと好き放題やらせてもらってます。

トラフ建築事務所さんの作った家が居心地よく、テレビで自然にテレビ会議出来たり、机の上に自然に映像投影出来たり。実際あそこで働くとはかどりました。

releasers

映像作家かつ、レコードもだしているアーティスト大西景太さんの作品のハードウェアプログラミング部分をお手伝いをさせていただきました。
短期間制作のハードウェアでしたが会期中問題なく動いていたよう!ハードウェア案件楽しい。

カレーの話

せっかくフリーランスになったので、仕事じゃない活動もしています。
人気のカレー屋を見つけては行ってみています。下北沢もすぐ近くなので

前職で、
「うまいカレー屋は?」「…ソルティモード」「m9(^Д^)プギャー 会社の前にあるやつじゃん」
と悔しかったので、自転車や打ち合わせ先で新しい店を開拓しております。
とはいえやっぱりソルティモードは美味いと思うのだけど。

その他

受託のアプリ幾つか。

2週間の中国出張で、展示用Unityのお仕事…これは勉強になった。中国すごい。

その他出来るか出来ないかわからないけど、挑戦するだけやってくれというプロトタイプのお仕事を頂いたり。(公開したらお知らせします。)

フリーランスになると、日銭を稼ぐ仕事が一杯で大変なんじゃないかという危機感もありましたが、 全くもってそんなことはなく、日々発見や挑戦にあふれております。

その他2014年の個人制作物

OpenPoolでビリヤード兄弟勝負。うまい


というわけで
感動的な退職エントリは書けませんでしたが、こんな感じで元気にやっております。

本当に色々な方々に助けていただきながらも何とかかんとかやれそうです。皆様いつもありがとうございます。

本年もどうぞよろしくお願い致します。

いぶくろ

Unity 5.1サラウンド (Mac)

Unityでサラウンド再生したいなー。でもできるかな~って要件があったので調べました。

オーディオインターフェイスを用意

そもそも5.1ch再生するには、6ch以上のアウトのあるオーディオインターフェイスが必要です。 今回はちょっと古いですが、FA-66で検証。 Firewire to Thunderbolt変換で、MacbookPro OS10.9.4へ 5.jpg

音を用意

テスト用に6ch入りのWAVを用意。 こちらは、3Dサウンドのチェックを外してインポート。

7.png

モノラル音声3Dサウンドも用意しました。

Unityの環境設定を変える

Edit/Project Settings/Audio Default Speaker ModeをStereoからSurround 5.1へ変更

3.png

4.png

API的にはこいつです。 http://docs.unity3d.com/ScriptReference/AudioSpeakerMode.html

マックの環境設定を変える

ここまでで動くとおもいきや、デフォルトだと、3ch,4ch,5ch,6chが、1,2chにミキシングされちゃいます。

  1. Audio Midi 設定アプリを開いて、
  2. 使っているインターフェースを選ぶ。
  3. Configure Speakers 右下のボタン
  4. Multi Surroundタブの設定を5.1 Surroundへ。
  5. Applyボタンを押す。

1.png

2.png

テストアプリ

6.png

サラウンドファイルはそのまま再生。 3Dサウンドは、Cubeに割り当てて、スライダーで空間をうごかせる。 こんなかんじで作成。

Unity Macでマルチスクリーン&フルスクリーン。

色々調べると、Unityのフルスクリーンで、マルチスクリーンは出来ないってのが定石のようだったので。
諦めるのは悔しいので、サイネージで使うネイティブ拡張機能をまとめたリポジトリ公開しました。

Githubリポジトリ

まだ実践投入してないですが、こんな感じ。3画面テストまでは成功。 capture

あとは4点ホモグラフィー補正機能とかも入れていきたいなあ。

TODO

1個だけ。'Displays have separate Spaces'をOFFにしないと、うまく動きません。 image

その他の機能

  • アプリの起動中は環境設定を変えなくてもスリープしない機能、スクリーンセーバーにならない機能
  • メニューバーを隠す
  • ウィンドウのタイトルを隠す
  • ウィンドウの優先度を変えて、最前面に(エラーダイアログ、Dock、通知とかより前に)。Finderを選択しても、このアプリのほうが上に出ます。

サンプルアプリ

Download link osx:10.9~

openFrameworksでジェスチャ認識

最近いろいろと試しているGRTというジェスチャ解析ライブラリの紹介です。

ジェスチャ認識とはなんぞや

理系じゃないので、正しくはないですが、ふんわりこんな感じなのかな↓

ジェスチャ認識とは

1.パソコンに正解パターンを沢山教える。→ Classfication  
2.入力した信号が、どのパターンに似ていたか判定する。→ Recognition  

この2つのフェーズに別れてやるらしい。論文を読むと妙に難しい単語で挫けそうになるのだけど。 学習フェーズ、判定フェーズの2つがあるってことを知っておけば、わかりやすくなります。

その上で、素敵なスライドのご紹介。流石MIT
IAP Workshop: A Hands-On Introduction to Gesture Recognition & Machine Learning

そしてこのPDFがとてもまとまっている。 [IAP Session 1] (http://www.nickgillian.com/archive/teaching/workshops/mitiap2013/IAP_Session1.pdf)

本当は検出器に掛ける前に、
カルマンフィルタ、ローパスフィルタやら入力する信号の特性に応じてフィルタリングかけたり、FFTに変換とかいろいろ下ごしらえをするらしい。

アルゴリズムも色いろある。
AdBoostとか、SVMとか…ふむふむ分からん。
僕がよくやりたいパターンだと、9軸センサからジェスチェ認識とかやりたいので、Dynamic Time Warpingがよさげ。

やってみる。

ジェスチャ認識のライブラリは他にWiigeeとか見つかったのですが、アルゴリズムが一種類HMM(隠れマルコフモデル)だけ。上記でも使っているGRTを使ってみます。

GRTソースコードはこちらから。
https://code.google.com/p/gesture-recognition-toolkit/source/checkout

今回実行したプログラムはこちら。
http://www.nickgillian.com/wiki/pmwiki.php/GRT/OpenframeworksDTWExample

Rキーで、レコード開始。正解パターンを教えます。一文字につき5~10回繰り返す。
スクリーンショット 2013-12-15 19.00.10.pngスクリーンショット 2013-12-15 19.00.17.png

スクリーンショット 2013-12-15 19.00.57.pngスクリーンショット 2013-12-15 19.01.12.png

スクリーンショット 2013-12-15 19.02.38.pngスクリーンショット 2013-12-15 19.02.44.png

Tキーで教えこむ。
ちょっと待つとリアルタイムで解析するようになります。
全部Rとして認識成功!

スクリーンショット 2013-12-15 19.05.10.pngスクリーンショット 2013-12-15 19.05.24.pngスクリーンショット 2013-12-15 19.04.48.png

今回はマウス座標で2次元だったけど、yaw,pitch,rollでの解析とか。加速度での解析とかができそう。

// line:
trainingData.setNumDimensions( 2 ); // こんかいはx,y

おまけ

GRT部分を単体のアプリケーションにして、OSC経由で使える。Processingのサンプルが含まれてますが、OSC経由なら別にiPhoneの加速度センサだって簡単に。面白いことができそう。
http://www.nickgillian.com/wiki/pmwiki.php/GRT/Download

GPSって実際どれほどの精度なのか試してみた

たまたまGPSを使う要件がありまして、
GPSがどこまでいけるのか検証してみました。

結論からいうと、かなりよい。

モジュールはスパークファンから購入した
Adafruit Ultimate 66チャンネル10Hz GPSモジュール Version 3

このライブラリの通りに5Vと、TX/RXをつなぐだけ。

IMG_0313.jpg

ArduinoのSerial MonitorでそのままGPSのログが確認できるようになりますが、
一点だいじな事…
屋内では使えません。
Macと、この怪しげなArduinoむき出しのブレッドボードをもって近所の公園へ出掛けました。
僕が警官なら間違いなく職質します。

↓横浜海辺の公園を、不審者まがいに歩いたログ
GPS LOG

↓高度情報はこちら
height_walk_10fps.png

絶対値のoffsetは2m程東へずれていますが、
相対値の移動はかなり正確だという印象。
車載GPSで次の角を曲がってくださいって言っているんだから当たり前か。自分でやるとえらく感動する。

シリアル通信でこんな感じのフォーマットが流れてくる。(横浜の公園だけどちょっとだけ伏せ字)

$GPGGA,094022.200,35XX.XXXX,N,139XX.XXXX,E,2,11,0.78,-10.4,M,39.5,M,0000,0000*79
$GPRMC,094022.200,A,35XX.XXXX,N,139XX.XXXX,E,0.08,311.14,201113,,,D*6B

これはNMEAフォーマットというものらしい。パーサーも上述のgithubにあるので、ありがたい。
速度方向も結構な精度が出ていた。

ちなみに、GPSログの解析は、
http://www.gpsvisualizer.com/
このサイトを利用。
生のNMEAログファイルをいれるだけで、googlemapでみれるし、png,jpg,svg,さらにgoogleearth用のkmlフォーマットにも変換してくれる。
なんて素敵なサービス。(サクラではありません。ほんとうに素敵です。)