3/11/2011

[&] iGRID (grid design for iPad)

iGRID0001ipad
iGRID0002ipad

なんかこう、iPad 2 発売に合わせて、
iGRID (grid design for iPad) というのを始めてみました。

http://www.flickr.com/photos/yukio-andoh/sets/72157626103400039/

定番グリッドデザインを、iPadに再構築するという考えです。

iPadの

 ●画面サイズ
 ●解像度
 ●ベゼル(画面周りの枠)
 ●白黒のコントラスト比
 ●隣ピクセルとのギャップ
 ●指で触る時の大きさ
 ●指で隠れる大きさの範囲

と、紙面とは違う、iPad ならではのグリッドデザインが
あるはずです。

とりあえず、定番ものから、思いついたものなど、
ぼちぼち作っていって、100枚くらい溜まったら
iPadアプリにしようかと考えています。

好評だったら、制作のペースをあげますし、
場合によっては iPhone 版とか、Android タブレット版も
考えたいと思います。

普段、自分はこういうグリッド使っているよ〜と
教えていただけるとありがたいです!

3/10/2011

[&] iGADGET making (QuickTime)

photo

久々のブログの iGADGET のお知らせでは、
ご期待とのお言葉を各所から頂き、ありがたく思っております。

iPad/iPhone 版の GADGET Past as Future [ iGADGET ] の開発では
様々な落とし穴にはまりました。数回にわけて、
その現象、事象と、回避策を書いていこうと思います。

まずは QuickTime 編。
iGADGET では、Director 時代に使われた QuickTime ムービーを
大部分の素材として用いています。
当時は MacOS 7.X の時代。QuickTime も 4.X 頃。
素材動画のタイムスタンプを見ると 199x 年とかで、
気絶しそうになりました。

まずは、もと素材の QuickTime (Cinepak圧縮) を
H.264 形式に変換します。
当時は Cinepak も優秀な CODECだったのですが、
H.264ですとさらに高画質で小さいファイルサイズで扱えます。
QuickTime Animation CODEC形式のものは iTunes では
変換できないので QuickTime 7 Pro で
H.264に変換します(後述)。
その他の動画ファイルはそのままでも再生できないことは無いのですが、
iPad/iPhoneのバッテリー消費の効率や最適化も考え、
全て H.264 QuickTimeで扱いました。

●動画変換すると、何らかのタイミングでまれに
 最後に1フレーム余計な画像が入る場合がある。
 なかなか気づかないけど、
 ループする動画などはタイミングがずれるので、
 最後のフレームがだぶっていないか確認。

● 0 duration movie が iPhone4 でのみ再生できない。
 0 duration movie とはごくまれに作られる、
 フレームとフレーム間のタイミング時間が0(ゼロ)のもの。
 動画内でシーンが切り替わったりする場合混在することがある。
 iPhone 3GS では再生できる動画なのだが、なぜか iPhone 4 だけ
 再生できず、アプリが落ちる。
 この 0 duration movie は iTunes 経由で動画を iPhone にコピー
 した場合、問題なく再生できため、発見しにくい。
 正常に再生できるかできないかは、iPhone にメール添付で
 動画を送りつけて、そこから再生できるかどうか試すしかない。
 そうして 0 duration movie を見つけたら、
 パラメータを変えて再エンコードし直す。
 これは Director 時代の動画を使い回しているから陥る問題。

● 1ピクセルの余計な黒線が発生。
 上の画像の窓枠下に、ごくわずかだけ黒い線が 1ピクセル分
 生じているのがわかるだろうか?
 元々の素材は MacOS 時代の 640x480 画面サイズに作られたものを
 そのまま用いているため、iPhone の画面サイズ
 480x320, 960x640にはぴったり適合しない。

 そこで、元の縮小したり、拡大したりして使うのだが、
 その際の割り算かけ算で1ピクセル以下のあまりが出てしまうと、
 そのあまりが余計な黒線となって現れる。
 これは上記の事象に合致すれば必ず現れるものでもないもよう。
 また面倒なことにこの事象は実機の画面でしか発生しない。
 さらに実機のスクリーンショットでも記録できない。

 3GSとiPhone4ごとに表示が異なるため、3GSでうまく調整しても、
 iPhone 4 では今度、横に余計な黒線が表示されたりする。
 たいていの場合 0.25 ピクセル単位で表示位置を調整すると
 直るのだが、
 最悪の場合は、480x320 の上でぴったり割り切れる数字に
 動画の縦横サイズを修正して使ったりした。

●ループ動画が正しくループ再生されない。
 これは iOS 4.0.X 環境にのみ生じる問題。
 発売当初にすぐ iPhone 4 を買ってから、
 一度も iOS をアップデートしていない人は iOS 4.0.X に相当する。
 NSString *osversion = [UIDevice currentDevice].systemVersion; 
 で取得できるので、動画再生のルーチンを切り替えることで対処可。
 ループ再生されない環境では、動画再生が最後まで到達したら、
 無理矢理フックをかけて、また最初から再生する機構を加える。

●サウンドトラックが2本以上ある動画は、1本目しか再生されない。
 QuickTime はメインのサウンドトラックの他に 2本目、3本目〜の
 サウンドトラックを保持することができ、通常は全部再生される。
 けれど iPad のみ、なぜか最初の1本目の音しか再生されない。

で、いろいろな落とし穴から這い上がってきたのだが、
結論は QuickTime 7 pro 最強!
MacOS X に標準で搭載されている QuickTime Player X は、
使いやすいのだが、細かい機能が省かれている。
QuickTime 7 Pro は MacOS X のインストール DVD に入っていて
オプションとして追加インストールすることができる。

QuickTime 7 pro では動画に対して様々な細かいパラメータを設定して
再度動画ファイルとして Export できるので重宝した。
さらに、動画をイメージシーケンス(連番静止画)とかにできたり、
逆にイメージシーケンスを動画にできたりするのも便利。
After Effects 等に慣れた人は、使い慣れたツールを
使う方が良いかもしれませんが、QT7p はシンプルで強力なツール。

結局のところ、iPad/iPhone 用の新しく動画ファイルを作る場合には、
上記のような落とし穴に落ちないかもしれないけど、
古い MacroMind Director の素材を iPad/iPhone で使うには
様々な苦労があったのでした。
こんなことする人はまれかもしれませんが、
何らかの参考になれば幸いです。

Bruce Leak氏らが描いた、
切手くらいの大きさの動画がパラパラ動いていた頃の QuickTime 1.0 の
思想と理想は、今も息づいているから。

evolution-apple-quicktime-logo

3/08/2011

[&] iGADGET

iGADGET

はてさて。しばらくブログを書いてませんでした。
いしたにまさきさんの「ネットで成功しているのは〈やめない人たち〉である
に取り上げて頂いたくせに「安藤日記」は止めたの?
というご心配の声も頂きました。

止めたのではなく、休んでいただけなんです。
そうです。ブログはちょっとだけ長い冬休みだったんです。

その間何をしていたかというと、夜も寝ないで昼寝して
会社にこもって iPad/iPhone アプリを開発しておりました。

それは今となっては大昔のゲームです。
Mac黎明期、MacroMind Director で作られた
CD-ROM マルチメディアコンテンツがたくさんありました。
MYST や SPACESHIP WARLOCK, ピーターガブリエルの XPLORA 1 など。
今となっては携帯電話の画面よりも小さな
ムービーが動いているのに関心したものです。

今回リリース間近に控えているアプリは、
そんな Director+CD-ROM 全盛期の中でも日本が世界に誇る
庄野晴彦さんの作品 "GADGET - Past as Future" です。

HalfLife などで、世界のゲーム業界を牽引する Marc Laidlaw 氏も、
GADGET の世界観に影響を受け、
このGADGETをテーマに小説を書いたほどです。

最初は移植なんて簡単さ〜 とタカをくくっていたのですが、
実際開発を始めてみると、
Director, iPad/iPhone, SDK, QuickTime の全ての
落とし穴に落ちたんじゃないかと思うくらい苦労しました。

けれども、プロデューサーの枡村さんのクオリティを追求する鑑識眼と、
iPad用に、ほとんど全ての動画映像を再レンダリングした庄野さん、
プロジェクトに関わった、決して数は多くない皆さんの尽力により、
1997年に発売された ”GADGET Past as Future” が
iPad, iPhone の上に完全な形で再現しました。

アプリ名は [ iGADGET ] です。
まだ発売されていません。

開発で培ったノウハウとか、
まだまだ書きたいことはあるのですが、
それはまたおいおい。

まずは、深夜デバッグ中に間違って流出した(笑)
テストプレイ中の映像をご覧ください。
そして、iGADGET発売の際には、
皆さんの iPad, iPhone で再びGADGET の世界観を
楽しんでいただければ幸いです。