2007年07月27日

MacBook Proのモーションセンサー @ Flash

MacBook Proのモーションセンサーを使ってFlashをコントロールする方法を実験してみました。(最近脱線してばかりだなぁ。こんな事をやっている場合ではないのだが・・・。)

まず、Christian Klein氏のmotion.cを参考に、CGIを作り、

http:
//localhost/cgi-bin/motion.cgi

この様なURLでモーションセンサーの値を返す様にします。ちなみに、返すデータはこの様な感じ。

<outputStructure>
<x>23</x>
<y>0</y>
<z>-36</z>
</outputStructure>

一応XMLにしてます。次に、Flashの方でこのXMLを読み込むようにします。実験的にPapervision3DでPlaneを表示し、モーションセンサーのXYZ軸に連動して、PlaneのrotationX、rotationY、rotationZを変化させます。動きをスムーズにするためにTweenerを使っているので、こんな感じです。

Tweener.addTween(planeObj, {rotationX:myXML.z/2,rotationY:myXML.y/2,rotationZ:(myXML.x/2)*-1, time:2, transition:"easeoutelastic"});

これで、仕組みとしては完成なのですが、CGIのレスポンスが悪いタイミングがあるらしく、ひっかりが有る感じです。シンプルに

x=23&y=0&z=-36

とした方が良かったのかも。もしくはウェブサーバーを経由せずに、絶えず、データをファイルに書き出して、そのファイルを頻繁に読む形の方がよいのかも。これはUSB-シリアルアダプターやMIDIを使った場合も応用できると思うので、また違う方法を実験してみます。

teenage mutant ninja hero coders: c0re in motion
>>関連リンク

閲覧数: 13314 / はてなブックマークusers

blog comments powered by Disqus

関連日記

アマゾン広告

この日記ページは閲覧数などの条件に応じて、閲覧制限を行っています。他からリンクしていただいても、そのリンクから辿った閲覧者が当ページの内容をご覧頂けない場合があります。ご了承下さい。

▼日記検索

▼ Mac

▼ Shade

▼ 3D

▼ Flash

▼ ゲーム

▼ ウェブ

▼ 食

▼ 音楽

▼ 映画

▼ デジカメ

▼ 雑

▼ Windows

▼ Linux

▼ 携帯電話

▼ 株

▼ テレビ

▼ 広島

▼ 電子工作

▼ iOS

▼ 最近のトラックバック

▼ランキング

▼関連サイト