memorandums

日々の生活で問題解決したこと、知ってよかったことなどを自分が思い出すために記録しています。

残像効果でメッセージ表示するiPhoneアプリを作ってみた

数日前、Light Writerを購入したのにインストールできなかった腹いせ?にmacbookで作ってみました。結果は惨敗。


さらに、ここ数日の行き帰りの電車で、openframeworksのiphone版に慣れてきたので、今度はiphoneアプリで挑戦しました。


プログラムは簡単です。iphone developer programの登録に手こずったくらいです。結果は以下の動画です。ちょっと工夫したところは、タッチしたときにメッセージ表示を開始するようにしたところです。


macbookiphoneアプリを作ってやっと気づいたのですが、このやり方では肉眼ではメッセージが見えないんですね。。。恐らく原理的には絶対見えないはずです。私はLight Writerの説明を読んだときに、よくおもちゃ屋で見かけるLED時計のようなものができると期待しました。恐らく、購入した人にはそういう人が結構いるんじゃないかと思います。


考えれば当たり前ですが、素早く振ってしまうといくら光量があってもコヒーレント?が高くても表示がブレてしまいます。それは見ている我々の目がついていけないからです。


LED時計の場合、ある場所で必ずその文字を表示するように作られていますから、ブレたとしても表示回数が積み重なれば肉眼の受光部?に光量が蓄積されるはずです。iPhoneの場合、手で動かしますから、同じ場所で同じ文字を表示することはほとんど不可能ですし、加速度センサーを使っても精度良くリアルタイムに位置を検出することは難しいでしょう。


以下、余談的な話です。


実は、Light Writerの前に日本人の方?がThunderMsgという有料のiPhoneアプリを公開していました。


で、そのはてぶコメントの1つに以下のようなものが。

光らせ方に工夫の余地がありそう。横スクロールするようにすれば肉眼でも見えるようになるのに。

なるほど。じゃ、作ってみましょう、ということで以下ような感じになりました。


YouTubeの説明にも書きましたが、当初、作りたかった「残像効果によるメッセージ表示」はどこへやら、という感じですが。。。まぁ、工事現場のメッセージと同じで、夜なんかは目立つかもしれませんね。それにしてもopenframeworksの開発は簡単だ。。。


スタンフォード大がiphoneアプリ開発の講義を公開した、というニュースが話題ですが、シラバスを見ると純正品(Cocoa+Objective-C2.0)で開発するようですね。。。当たり前といえば当たり前ですが。とりあえず作るだけなら、(C++の経験さえあれば)openframeworksの方がはるかに楽だろうなぁ。


といいつつも。実はしょうもないところに30分くらいはまりました。ヘッダーファイルのクラス定義で、最後に「;」を忘れていました。Javaはいらないですからね。。。C++慣れというものは恐ろしいもので。


今日こそ早く寝ようと思ったのになぁ。。。また遊んでしまった。。。