memorandums

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

Processing.jsでPerfumeのダンスを動かしてみた

かなり出遅れましたが。。。Processingのコードが(も?)公開されていますが、どうせならスマフォで見てみたい(他にやっている人がいなかった感じがしたので)Processing.jsで動くようにProcessingのコードを移植(というか劣化)してみました。下のLinkをクリックしてみてください。ちなみにWebGLに対応したブラウザでないと見れません(Safariはデフォルトではオフなのでこちらを見てオンにしてください)

Link: Processing.js版

とりあえず3人分のデータだとデータ読み込み時にタイムアウトするので1人だけ動かしています。コード内のコメントを外せば3人を動かすことができます。

ツイッターでもつぶやきましたが、公開されているProcessingコードはTiger以降の機能をあれこれ使っています。それらのほとんどがProcessing.jsでは使えませんでした。移植するときには要注意です。

  • ジェネリクス → 1つ1つキャストで対応
  • 拡張for → 普通のfor文に置き換え
  • primitive class(Integer等) → 独自クラス(Float)を作り対応
  • reflection → if文に置き換え
  • package → 削除
  • class method → インスタンスメソッド
  • ネイティブアプリに比べるとフレームレートがでない
  • Webアプリに共通するでしょうけどデバッグはとにかく大変

ちなみに。。。作り終えてiPhone4SiPad2で動作確認したら。。。見れないorz 調べてみるとWebGLに対応していないとか。。。ちゃんちゃん。Androidなら見れるかもしれませんね。iOSの更新を待ちましょう。

Link: Perfume Global Site