iPhoneを色々触ってQuadCameraに、自力で回転つきUIScrollViewとかを実装したりしたお陰で、ようやっとFlashでマルチタッチを実装するノウハウとかが確立できた気がする。
Flashでマルチタッチはサイネージ系でもほぼ仕事がなさそうだけど、先行投資研究としてメモ。 数年後には需要がでるはず。
■マルチタッチを如何に管理するか
ゆび1つにつき1つのTouchObjectとして管理し、TOUCH_PRESS, TOUCH_RELESE, TOUCH_MOVE をEventDispacherで発行するようにする。 要はこのパートはiPhoneの機構をマルパクリする。
■タッチの同一性の検出
最大の問題は、指Aのタッチと指Bのタッチの同一性を検出すること。 つまりマルチタッチでグリグリ動かすときに、2つのタッチでどっちがAでBかを正しく判別しつづけること。 iPhoneではココはOSが担当してくれているのだけど、自力実装をしようとすると大半はここで挫折することとなる。
これについては基本的に、「前フレームの全てのTouch」と「今フレームの全てのTouch」の距離差を総当りし、「過去と現在の移動距離の差の総和」が最も小さくなる組み合わせを採用することで、かなりの精度でタッチの同一性を検出することができる。
しかし高速で指を移動させた場合、タッチの検出が間に合わない可能性や、交差した瞬間に指が入れ替わってしまう可能性が残る。これについては、サブパラメータとして、「既に検出されているタッチ」は移動速度を加重平均で測定し、速度が一定以上の場合は、現在位置のかわりに次フレームの予想到達地点を基準に、タッチ距離を計測することで、ある程度解決できる。
■ジェスチャーの認識
スワイプやダブルタップは自力実装できるが、文字や記号を認識する場合はどうすればいいのか? ここはiPhoneでもOSレベルでは提供されていないので、やっている人はほぼいない。 これについてはレーベンシュタイン距離によるジェスチャー間の類似度測定によって達成できる。 レーベンシュタイン距離に関する解説は、はてなおや先生とヤフー知恵袋がわかりやすい。
ちなみにレーベンシュタイン距離によるジェスチャー実装は、Flashでは過去事例が存在するので多分大丈夫だと思う。
iPhoneアプリは謎の規約として、アプリ内課金を無料アプリに実装できないというルールがある。以前も書いたエントリでも自分はアプリ内課金に否定的だったのだけど、なんかいい使い方はないかウンウンうなってたら思いついた。
1: 無料アプリをリリースして100万DLぐらい達成する。
2: アプリを有料に変更する。
3: アプリをアップデートしてアプリ内課金を実装する。
4:100万DLされた、アプリ内課金アプリの出現。
というのはどうだろう? 規約的には引っかからないと思う。 Prosはクリティカルマスを狙える課金アプリを作りやすいこと、Consは一度有料にしたら後戻りできない点と、有料にしなければアプリ内課金が発動しない点。比較的、初期の駅探モデルに近い感じですね。
逆のアプローチとして
1: アプリ内課金を実装した有料アプリをリリースする。
2: 価格変更で無料に。
3: 無料のアプリ内課金アプリ完成!
という手段も考えられますが、こちらのほうが最終的に無料の課金アプリできるのでスマートな感じですが、技術的にブロックされてる可能性があるのと、規約的に地雷を踏んでいる可能性が高いのでお勧めできなさそう。 Prosは文字通り無料の課金アプリを作れる抜け道、Consはリスク激高。
規約上、無料アプリで使えないのと、バーチャルマネーが発行できないのでどうも使い勝手が難しそうな印象。国内では誰が最初のブレイクスルーになるかは、要チェックや!だと思います。
俺の主力アニメーションライブラリが オワタ\(^o^)/ さようならTweener、今までありがとう!!!
TweenerはActionScriptで最も普及したアニメーションライブラリだったのだけど、ついに作者が更新の停止を宣言。理由は後ろ向きのものではなく、「ライブラリの設計思想が時代遅れになったので、あたらしいアニメーションライブラリを再構築するから」とのこと。 仕事に影響する人はメチャクチャいると思うので要チェックです。
詳細はTONPOOBLOGの方が全訳してくれてるので、そちらへ。
米オライリーが出した、Best Iphone Appsという本を一冊いただいたのですが、とていい感じ。
この本はAppStoreに存在する5万超のアプリの中から、著者がセレクトした200個をピックアップして紹介する本。「ベストTwitterクライアント」、「ベスト地図アプリ」といった具合に、基本1ページ1アプリをフルカラーで紹介します。
日本で話題になっていない米国のアプリのトレンドを調べられ、それが何故評価されているのかをチェックできるという意味で、開発者&パブリッシャーは買って損はないかと。今この200個のアプリを順番に購入してテストしようか考え中。
ちなみにオンライン書籍版は45日間無料で読めますのでとりあえずお勧め。
アキバの新名所?ドラクエすれ違いコーナーがヨドバシに出現一時250人近い大賑わい
「はぐれメタルの地図」ほか超レアアイテムを満載したNintendo DSi を喫茶店側で用意して、ドラクエ9すれ違い通信喫茶をやれば、超満員じゃね?
iPhone OSの非常に重要なセキュリティ上のアップデートがきましたね。OS3.0.1です。
今回のアップデートは、開発者には直接影響を与えることはない・・・はずですが、このアップデートに関して注目したほうが良さそうなことが2つあるかと思います。
ここで注目したいのは2点。
・このアップデートによって、iPhone OS 2.x 系のiPhoneが事実上駆逐されるか否か。
・iPhoneを持っていながら、OS3.0.1をインストールしない層はどれだけいるのか?
Appleとキャリアが連動して、iPhoneのアップデートをSMS経由で告知をするようになると、OS3.0の普及は盤石になるのではないかと思います。いっぽうで、そういうことをしない限り、iPhoneを母艦と接続しないユーザー層はOS3.0.1に移行しない可能性が残ります。また今回のアップデートはiPod touch系にはあまり影響がなく、touch層としては依然として2.x系にとどまり続ける層が一定数あるかと思います。
iPhoneアプリ開発者としては単なるバグフィックスという点よりも、このようなアップデートがOS3.0の普及率にどのような影響をもたらすのか?というあたりに注目したら、なんか面白いデータが出るんじゃないかと。